Mai*_*tor 0 javascript iteration foreach break
在迭代用户/引擎定义的函数时,实现for循环的"break"功能的最佳方法是什么?
foreach([0,1,2,3,4],function(n){
console.log(n);
if (n==2)
break;});
Run Code Online (Sandbox Code Playgroud)
我曾经想过以一种在函数返回'false'时会破坏的方式实现foreach - 但我想听听有关通常如何完成的想法.
returning false是最常用的方法.这就是jQuery的迭代器函数.each()所做的事情:
我们可以通过使回调函数返回false来在特定迭代中中断$ .each()循环.返回非false与for循环中的continue语句相同; 它将立即跳到下一次迭代.
它的实现非常简单:
each: function( object, callback ) {
var i = 0, length = object.length,
for ( var value = object[0];
i < length && callback.call( value, i, value ) !== false; // break if false is returned by the callback
value = object[++i] ) {}
return object;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4902 次 |
| 最近记录: |