有没有办法让我在满足条件后突破数组映射方法?我尝试了下面的抛出"Illegal Break Statement" Error.
这是我提出的一些随机的例子.
var myArray = [22,34,5,67,99,0];
var hasValueLessThanTen = false;
myArray.map(function (value){
if(value<10){
hasValueLessThanTen = true;
break;
}
}
);
Run Code Online (Sandbox Code Playgroud)
我们可以使用for
循环,但我想知道我们是否可以完成相同的使用map
方法?
Joã*_*lva 138
使用内置功能是不可能的Array.prototype.map
.但是,for
如果您不打算使用map
任何值,则可以使用简单的-loop :
var hasValueLessThanTen = false;
for (var i = 0; i < myArray.length; i++) {
if (myArray[i] < 10) {
hasValueLessThanTen = true;
break;
}
}
Run Code Online (Sandbox Code Playgroud)
或者,如建议的那样@RobW
,用于Array.prototype.some
测试是否存在至少一个小于10的元素.当找到与您的函数匹配的元素时,它将停止循环:
var hasValueLessThanTen = myArray.some(function (val) {
return val < 10;
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
146093 次 |
最近记录: |