前言
開發中,經常會用到js的Array數組的各種迭代函數map(),filter(),some(),every(),forEach(),find() findIndex(),也是在ES6中新增一些遍歷函數。同樣是不是也是一道面試題,說說ES6新增的一些新特性????
✍開始正文every()函數
✍一、對every()函數的定義:
every() 方法用於檢測數組中所有元素是否都符合指定條件(通過函數提供);
every()方法使用指定函數檢測數組中的所有元素:
- 如果數組中檢測到有一個元素不滿足,則整個表達式返回false,且剩餘的元素不會再進行檢測。
- 如果所有元素都滿足條件,則返回true。
注意:
- every()不會對空數組進行檢測。
- every() 不會改變原始數組。
✍二、瀏覽器支持
表格中的數字表示支持該方法的第一個瀏覽器的版本號。
✍三、語法
array.every(function(currentValue,index,arr), thisValue)
參數說明:
✍四、示例
檢測數組 ages 的所有元素是否都大於等於輸入框中指定的數字:
<p>最小年齡: <input type="number" id="ageToCheck" value="18"></p>
<button onclick="myFunction()">點我</button>
<p>是否所有年齡都符號條件? <span id="demo"></span></p>
<script>
var ages = [32, 33, 12, 40];
function checkAdult(age) {
return age >= document.getElementById("ageToCheck").value;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.every(checkAdult);
}
</script>