2
我創建了一個簡單的函數:它有數組作爲輸入和id。函數假設在給定想法之前採取所有元素。功能風格的重寫循環
function takeBefore(stars, id) {
var taken = [];
for(var i = 0, length = stars.length; i < length; i++) {
if (stars[i].itemId === id) {
break;
}
taken.push(stars[i]);
}
return taken;
}
下面的代碼完成這項工作,但最近我變得有點挑剔。想擺脫for-loop和一些功能風格。
是否可以使用underscore
或ES5
函數來做同樣的工作?
的作品真的很好!你可以plz擴展'every' ..我認爲它返回布爾值,它如何作爲pos + all使用? – 2013-05-11 08:22:02
@alexanderb:這實際上是一個黑客。當與'+'一起使用時,布爾變換爲整數(true = 1,false = 0),我用它來將位置移動一個以防所有元素匹配謂詞。 – georg 2013-05-11 08:25:07