先来看下forEach的实现
// 8. return undefined
};
}
};
}
基本用法:
arr.forEach(callback[, thisArg]),callback会接收到三个参数:currentValue、index、array
false;
});
// logs:
0: JavaScript
1: Java
2: CoffeeScript
3: TypeScript
使用some函数
;
});
// logs:
0: JavaScript
1: Java
2: CoffeeScript
使用every函数
) > -1;
});
// logs:
0: JavaScript
1: Java
使用fo..of
break;
}
}
// logs:
0
1
2
3
4
5
而如果forEach想实现类似every、some函数的效果该如何做呢?
在stackoverflow上得票比较高的有如下几类方法 :
1、循环外使用try.. catch,当需要中断时throw 一个异常,然后catch进行捕获;
2、重写forEach(也是借鉴第一种方法);
throw e;
}
throw StopIteration;
alert(val);
});
参考链接:
http://dean.edwards.name/weblog/2006/07/enum/
http://www.jsnoob.com/2013/11/26/how-to-break-the-foreach/
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...of