Array.every()測試所有陣列元素
- 詳細內容
- 分類:Javascript
- 發佈:2013-03-06, 週三 11:34
- 點擊數:2468
Javascript的Array.every()方法:
Array.every()方法利用回呼函式測試陣列元素中所有的元素,
其中不包含被刪除的元素,或是未被給定初始值得元素,若是初始值給定undefined 依然會呼叫回呼函式進行測試。
當所有元素都都通過回呼函式測試時,every()方法返回true,若有任一個元素不符合則返回false。
也就是說every()方法在遇到第一個不符合的元素時,就會立即返回false,而不再對後面的元素進行測試。
要注意的一點是不管測試函式怎麼寫,若陣列本身是空陣列,那every()方法必然會返回true。
every()方法出現在ECMA-262第五版中,因此可能會有些瀏覽器並不支援這方法。
若要確保在所有瀏覽器中都能正確執行,可在原型中自行定義此方法。
Array.every()的語法:
array.every( callbackfn [ , thisArg ] )
callbackfn:回呼函式,用來測試陣列中的元素,需由設計師自行撰寫,
callbackfn有三個傳入值element、index、array,
element:測試元素的值。
index:測試元素索引。
array:測試的陣列。
測試通過則傳回true,失敗則傳回false。
thisArg:callbackfn中的this代表的物件,如果省略則callbackfn中的this代表全域物件。
Array.every()的範例:
Array.every()的範例輸出:
陣列1元素是否全部>=10:false
陣列2元素是否全部>=10:true
在原型中新增Array.every()方法:
Array.every()方法是ECMS-262中的標準方法,但並非所有瀏覽器都支援,
為確保在所有瀏覽器中都能正確執行,可自行在原型中定義該方法。
下面是MDN中Array every method提供的程式,將其放入<script>的開頭:
關於Array物件的其他屬性與方法,請參考:陣列物件 Array。
按個讚!~支持本站!~
你可能會有興趣的文章
- Array.forEach()迭代整個陣列元素
- Array.filter()過濾陣列元素
- 關聯式陣列
- for in 列舉陣列(Array)的危險陷阱
- Array.valueOf()傳回原始值
- Array.unshift()新增元素並傳回陣列長度