for i in [name, matches_total, matches_won, matches_lost]:
doSomething(i)
我尝试为 JS 执行此操作,但没有成功。基本上,我希望它对每个变量做任何事情。我如何用 JS 做到这一点?
我的尝试:
for (i in [name, matches_total, matches_won, matches_lost]){
doSomething(i);
}
for i in [name, matches_total, matches_won, matches_lost]:
doSomething(i)
我尝试为 JS 执行此操作,但没有成功。基本上,我希望它对每个变量做任何事情。我如何用 JS 做到这一点?
我的尝试:
for (i in [name, matches_total, matches_won, matches_lost]){
doSomething(i);
}
JavaScript 没有完全相同的in
运算符。如果您在支持 的环境中forEach
,则它的风格相对接近(除了您为循环定义了一个内部匿名函数,有点像 Python lambda
:
[name, matches_total, matches_won, matches_lost].forEach(function(i) {
doSomething(i);
});
在这种情况下(你在每个列表项上调用一个函数的情况)你可以用一种我觉得语法上很好的方式来简化它:
[name, matches_total, matches_won, matches_lost].forEach(doSomething);
for (var i = 0; i < list.length; ++i) {
doSomething(list[i]);
}
有两种 for 循环,一种for-in
是为对象设计的循环,另一种是三语句 for 循环for (;;)
。for-in
不建议在数组上使用,因为它也会遍历其原型链。
var my_array = [name, matches_total, matches_won, matches_lost]
for (var i in my_array){
doSomething(my_array[i]);
}