indexOf與includes的比較


indexOf和includes都代表檢測數組或字符串中是否包含某一個元素

其中indexOf返回的是數值類型,而includes返回的是布爾類型

var ary = [,,];
console.log(ary.indexOf(undefined))//-1
console.log(ary.includes(undefined))//true

數組中的indexOf不能判斷數組中是否有NaN,而includes可以做到

var ary = [NaN];
console.log(ary.indexOf(NaN))//-1 indexOf不能判斷NaN
console.log(ary.includes(NaN))//true includes可以

如果想查找某個元素在數組中的索引位置,就用indexOf

如果想查找某個元素在數組中是否存在,就用includes

 

兩者都是字符串和數組共同的方法

字符串的indexOf和數組中的indexOf的比較

1 這兩個方法都可以接收兩個參數
2 這兩個方法在沒有查找的指定的字符都返回-1
3 字符串中的indexOf中的第二個參數不支持負數而數組的indexOf支持
4 字符串的indexOf在傳入參數不是字符串的情況下默認會轉換為字符串而數組的indexOf不會進行數據類的轉換

字符串的includes和數組中的includes的比較

1 這兩個方法都可以接收兩個參數
2 這兩個方法在沒有查找的指定的字符都返回false
3 字符串中的includes中的第二個參數不支持負數而數組的includes支持
4 字符串的includes在傳入參數不是字符串的情況下默認會轉換為字符串而數組的includes不會進行數據類的轉換

 


免責聲明!

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



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