es6 some()方法是用來偵測數組中是否存在符合指定條件的元素,存在就回傳true,不存在就回傳false;換個角度,也可用於偵測數組中的所有元素是否都不符合指定條件,都不符合則回傳false,有一個或多個符合則回傳true。
本教學操作環境:windows7系統、ECMAScript 6版、Dell G3電腦。
some() 方法可以用來偵測陣列中的元素是否符合指定條件(函數提供),存在就傳回 true,不存在就傳回 false。只要數組中有一個元素滿足條件,some() 就會回傳true;
換個角度思考,some() 也可以用來偵測數組中的所有元素是否都不符合指定條件,都不符合的話就回傳false,有一個或多個符合的話就回傳true。
array.some(function callbackfn(Value,index,array),thisValue)
array:必要參數,陣列物件。
function callbackfn(value,index,array)
:一個回呼函數,必要參數,最多可接受三個參數:
value:目前陣列元素的值,不可省略。
index:目前陣列元素的數字索引。
array:目前元素屬於的陣列物件。
thisArg:可選參數,可在 callbackfn 函數中為其引用 this 關鍵字的物件。如果省略 thisArg,則 undefined 將用作返回 false。
song() 方法會依升序索引順序對每個陣列元素呼叫 callbackfn 函數,直到 callbackfn 函數傳回 true。如果找到導致 callbackfn 回傳 true 的元素,則 some() 方法會立即傳回 true。如果回呼不對任何元素回傳 true,則 some() 方法會回傳 false。
some() 方法不會為陣列中缺少的元素呼叫該回呼函數。除了陣列物件之外,some() 方法可由具有 length 屬性且具有已按數字編制索引的屬性名的任何物件使用,如關聯數組、Arguments 等。
範例:偵測陣列中元素的值是否皆為奇數
#如果 some() 方法偵測到偶數,則傳回 true,並提示不全是奇數;如果沒有偵測到偶數,則提示全部是奇數。
function f(value, index, ar) { if (value % 2 == 0) { return true; } } var a = [1,15,4,10,11,22]; var evens = a.some(f); if (evens) { console.log("不全是奇数。"); } else { console.log("全是奇数。"); }
【推薦學習:javascript進階教學】
以上是es6 some方法是做什麼的的詳細內容。更多資訊請關注PHP中文網其他相關文章!