上一篇文章中我們了解了數(shù)組中元素實現(xiàn)累加效果的方法,請看《js數(shù)組中的元素如何實現(xiàn)累加效果》。這次我們來了解一下判斷數(shù)組中有元素通過測試的方法,有需要的可以參考參考。
我們現(xiàn)在有這樣一個問題,已知,有一個包含7,2,5,14,8的數(shù)組,現(xiàn)在想知道在這個數(shù)組中,當我們含有的元素除以2的時候,是否有一個元素可以被整除,如果有請返回true,如果沒有請返回false。
<script> var arr = new Array(7); arr[0] = 7; arr[1] = 2; arr[2] = 5; arr[3] = 14; arr[4] = 8; console.log(arr); const even = (element) => element % 2 === 0; console.log(arr.some(even)); </script>
這個小例子的結(jié)果是
我們可以看到這個小例子的結(jié)果是true,這代表在這個數(shù)組中至少有一個元素可以整除2的??梢钥匆幌逻@個題目,在這個題目中,我們很容易就能知道,2是可以整除2的,14也是可以整除2的,同樣的8也是可以整除2的,所以這個結(jié)果一定是true了。
了解這么多之后,我們來看一個some這個方法吧。
some() 方法測試數(shù)組中是不是至少有1個元素通過了被提供的函數(shù)測試。它返回的是一個Boolean類型的值。數(shù)組中有至少一個元素通過回調(diào)函數(shù)的測試就會返回true;所有元素都沒有通過回調(diào)函數(shù)的測試返回值才會為false。
這個方法的語法格式是
arr.some(callback(正在處理的元素,正在處理的元素,被調(diào)用的數(shù)組),執(zhí)行函數(shù)時使用的值)
some()
為數(shù)組中的每一個元素執(zhí)行一次 callback
函數(shù),直到找到一個使得 callback 返回一個“真值”(即可轉(zhuǎn)換為布爾值 true 的值)。如果找到了這樣一個值,some() 將會立即返回 true
。否則,some() 返回 false
。callback 只會在那些”有值“的索引上被調(diào)用,不會在那些被刪除或從來未被賦值的索引上調(diào)用。
就說到這里了,有需要的可以看:javascript高級教程