當有人問到用來确定一個字元串是否包含在另一個字元串中有哪些方法時,我們會不假思索回答道: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
結果:
②startsWith():傳回布爾值,表示參數字元串是否在原字元串的頭部。
如下所示:
let str = 'Hello world!';
let res1 = str.startsWith('Hello');
let res2 = str.startsWith('world');
console.log(res1); // true
console.log(res2); // false
結果:
③endsWith():傳回布爾值,表示參數字元串是否在原字元串的尾部。
如下所示:
let str = 'Hello world!';
let res1 = str.endsWith('!');
let res2 = str.endsWith('d');
console.log(res1); // true
console.log(res2); // false
結果:
這三個方法都支援第二個參數,表示看是搜尋的位置。
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
到此這篇關于詳解ES6新增字元串擴張方法includes()、startsWith()、endsWith()的文章就介紹到這了,更多相關ES6 includes() startsWith() endsWith()内容請搜尋腳本之家以前的文章或繼續浏覽下面的相關文章希望大家以後多多支援腳本之家!