ES6中字符串的扩展

一、查找字符串

在ES5中,可以使用 indexOf 方法和 lastIndexOf 方法查找字符串:

let str = 'hello world';
alert(str.indexOf('o'));   // 4
alert(str.lastIndexOf('o'));   // 7
alert(str.lastIndexOf('z'));   // -1

 ES6中,又新增了3个方法用于特定字符的查找。

 

1、includes()

该方法传入一个字符串参数,然后返回一个布尔值,表示是否在指定字符串中找到了该字符串片段。

let str = 'hello';
console.log(str.includes('h'));   // true
console.log(str.includes('z'));   // false

 

2、startsWith()

该方法传入一个字符串参数,然后返回一个布尔值,表示是否在指定字符串开头找到了该字符串片段。

let str = 'hello';
console.log(str.startsWith('h'));   // true
console.log(str.startsWith('lo'));   // false

 

3、endsWith()

该方法传入一个字符串参数,然后返回一个布尔值,表示是否在指定字符串末尾找到了该字符串片段。

let str = 'hello';
console.log(str.endsWith('h'));   // false
console.log(str.endsWith('o'));   // true

 

二、操作字符串

1、repeat()

对一个字符串进行重复,返回一个新字符串。

let str = 'ha';
console.log(str.repeat(3));   'hahaha'

参数如果是小数,会被向下取整进行操作。

let str = 'ha';
console.log(str.repeat(2.9));   'haha'

参数如果是负数,会报错。

let str = 'ha';
console.log(str.repeat(-2));   // error

 

三、模板字符串

ES6引入了模板字符串,用反引号标识( ` ),主要功能有俩个。

1、定义多行字符串。

let str = `hello
hello
hello`;
console.log(str)
// hello
// hello
// hello

2、在字符中嵌入变量,把变量包裹在 ${} 中即可。

var username = 'tom';
alert(`hello ${username}`);   // hello tom

 

posted @ 2019-02-02 16:24  asimpleday  阅读(281)  评论(0编辑  收藏  举报