详解ES6新增字符串扩张方法includes()、startsWith()、endsWith()

(编辑:jimmy 日期: 2024/11/17 浏览:2)

当有人问到用来确定一个字符串是否包含在另一个字符串中有哪些方法时,我们会不假思索回答道:indexOf方法。其实,ES6 又提供了三种新方法includes()、startsWith()、endsWith(),也是比较好用的。

indexOf方法在这里就不多说了,大家都比较熟悉,意思就是:返回给定元素在数组中第一次出现的位置,返回结果是匹配开始的位置,如果没有出现则返回-1。

下面详细介绍ES6新增的这三种方法:

includes():返回布尔值,表示是否找到了参数字符串。

如下所示:

let str = 'Hello world!';
let res1 = str.includes('Hello');
let res2 = str.includes('hi');
console.log(res1); // true
console.log(res2); // false

结果:

详解ES6新增字符串扩张方法includes()、startsWith()、endsWith()

startsWith():返回布尔值,表示参数字符串是否在原字符串的头部。

如下所示:

let str = 'Hello world!';
let res1 = str.startsWith('Hello');
let res2 = str.startsWith('world');
console.log(res1); // true
console.log(res2); // false

结果:

详解ES6新增字符串扩张方法includes()、startsWith()、endsWith()

endsWith():返回布尔值,表示参数字符串是否在原字符串的尾部。

如下所示:

let str = 'Hello world!';
let res1 = str.endsWith('!');
let res2 = str.endsWith('d');
console.log(res1); // true
console.log(res2); // false

结果:

详解ES6新增字符串扩张方法includes()、startsWith()、endsWith()

这三个方法都支持第二个参数,表示看是搜索的位置。

 let str = 'Hello World!'
 console.log(str.includes('World', 5)) // true 从索引5(包含索引5)开始搜索
 console.log(str.includes('World', 7)) // false
 console.log(str.startsWith('lo', 3)) // true
 console.log(str.startsWith('H', 3)) // false
 console.log(str.endsWith('Hel', 3)) // true
 console.log(str.endsWith('d', 3)) // false
一句话新闻
Windows上运行安卓你用过了吗
在去年的5月23日,借助Intel Bridge Technology以及Intel Celadon两项技术的驱动,Intel为PC用户带来了Android On Windows(AOW)平台,并携手国内软件公司腾讯共同推出了腾讯应用宝电脑版,将Windows与安卓两大生态进行了融合,PC的使用体验随即被带入到了一个全新的阶段。