S6為Array增加了find(),findIndex函數。
find()函數用來查找目標元素,找到就返回該元素,找不到返回undefined。
findIndex()函數也是查找目標元素,找到就返回元素的位置,找不到就返回-1
find()
find()方法,用於找出第一個符合條件的數組成員。它的參數是一個回調函數,所有數組成員依次執行該回調函數,直到找出第一個返回值為true的成員,然后返回該成員。如果沒有符合條件的成員,則返回undefined。
[1, 2, 5, -1, 9].find((n) => n < 0) //找出數組中第一個小於 0 的成員 // -1
注釋:字符串不可以
findIndex()
findIndex()方法的用法與find()方法非常類似,返回第一個符合條件的數組成員的位置,如果所有成員都不符合條件,則返回-1。
[1, 2, 5, -1, 9].findIndex((n) => n < 0) //返回符合條件的值的位置(索引) // 3
注釋:字符串不可以
indexOf()
方法可返回某個指定的字符串值在字符串中首次出現的位置。
stringObject.indexOf( value, index );
value:必需,規定需檢索的字符串值。可選的整數參數。
index:規定在字符串中開始檢索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略該參數,則將從字符串的首字符開始檢索
注釋:indexOf() 方法對大小寫敏感!
注釋:如果要檢索的字符串值沒有出現,則該方法返回 -1。
注釋:數組也可以