gpt4 book ai didi

javascript - 编写 Array.every() 函数

转载 作者:行者123 更新时间:2023-12-03 06:02:49 24 4
gpt4 key购买 nike

我想知道如何使用 for 循环自己编写 Array.every() 函数。在我的示例中,for 循环每次迭代都会打印 true 5 次。如何让它在如果所有值都通过时返回 true,就像 Array.every() 函数一样?

var array = [1,2,3,4,5];

console.log(array.every(function(num){return num < 6}))

// the for loop will return true 5 times
for(i=0;i<array.length;i++){
if(array[i] < 6)
console.log(true)
}

最佳答案

"In my example the for loop will return true 5 times for each iteration."

不,不会,因为第一个 return 语句会立即返回,而不会迭代其余项。所以,您实际上实现的是 .some() method 的简单版本。 ,如果至少有一项符合条件,则返回 true

如果您只是想要一个简单的 for 循环实现来测试每个项目是否符合条件,请反转测试逻辑并在发现不符合条件的元素后立即返回 false em> 匹配。如果循环中没有项目未通过测试,则循环将完成,因此返回 true之后:

for(i=0;i<array.length;i++){
if(!(array[i] < 6))
return false;
}
return true;

您可能想看一下 .every() 的完整实现:​​MDN's .every() polyfill

关于javascript - 编写 Array.every() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39683208/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com