字符串includes()和數組includes()


字符串includes()和數組includes()

 

字符串的includes()方法

參考文檔:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/includes

String.prototype.includes() 

用於判斷一個字符串是否包含在另一個字符串中,根據情況返回true或false

該方法已被加入ECMAScript6標准中

 

【語法】

str.includes(searchString[, position])

 

【參數】

- searchString 要在此字符串中搜索的字符串

- position 可選

從當前字符串的哪個索引位置開始搜尋子字符串,默認值0

如果為負值,則等同於為0

 

【返回值】

如果當前字符串包含被搜尋的字符串返回true, 否則返回false

 

【示例】

var str = 'To be, or not to be, that is the question.' str.includes('To be'); // true
str.includes('question'); // true
str.includes('nonexistent'); // false
str.includes('To be', 1); // false
str.includes('TO BE'); // false

 

【瀏覽器兼容性】

 

 不支持IE!!!

 

 

數組的includes()方法

文檔:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/includes

 

Array.prototype.includes()

includes函數用來判斷一個數組是否包含一個指定的值,根據情況,如果包含則返回true, 否則返回false

Demo

const array1 = [1, 2, 3]; console.log(array1.includes(2));  // true
 const pets = ['cat', 'dog', 'bat']; console.log(pets.includes('cat')); // true
 console.log(pest.includes('at')); // false

 

【語法】

arr.includes(valueToFind[, fromIndex]);

 

【參數】

- valueToFind

需要查找的元素值

- fromIndex 可選

從fromIndex索引處開始查找,如果為負值,則從arr.length + fromIndex的位置開始查找

 

【返回值】Boolean

 

更多示例

[1, 2, 3].includes(2); // true
[1, 2, 3].includes(4); // false
[1, 2, 3, 4, 5, 6, 7, 8].includes(2, 1); // true
[1, 2, 3, 4, 5, 6, 7, 8].includes(2, 2); // false

[1, 2, NaN].includes(NaN);

 

如果fromIndex大於等於數組長度,則返回false,且該數組不會被搜索

var arr = ['a', 'b', 'c'];

arr.includes('c', 3); // false
arr.includes('c', 100); // false

如果fromIndex為負值,計算出的索引將作為開始搜索searchElement的位置。

如果計算出的索引小於0,則整個數組都會被搜索

示例

[1, 2, 3, 4, 5].includes(1, -1); // false
[1, 2, 3, 4, 5].includes(5, -1); // true
[1, 2, 3, 4, 5].includes(4, -1); // false
[1, 2, 3, 4, 5].includes(4, -2); // true
[1, 2, 3, 4, 5].includes(5, -2); // true

 

作為通用方法的includes()

includes()方法有意設計為通用方法。它不要求this值是數組對象,所以它可以被用於其他類型的對象(比如類數組對象)。示例:

(function(){
    console.log([].includes.call(arguments, 'a')); // true
    console.log([].includes.call(arguments, 'd')); // false
})('a', 'b', 'c')

 

【瀏覽器兼容性】

 

 不支持IE !!!

 

 

【更多擴展】

ES7文檔(英文): https://www.ecma-international.org/ecma-262/7.0/

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM