for()的奇怪javascript行为

Ale*_*lex 2 javascript arrays jquery for-loop

我有这样的功能:

var dostuff = function(thing){
  var count = myvar.length; // <- I know for sure it's larger than 1
  for (i = 0; i < count; i++)
    whatever(myvar[myvar.length - 1]);
},
...
dostuff(thing);
...
Run Code Online (Sandbox Code Playgroud)

问题是for循环只执行whatever()一次,即使count变量是4,10,20,100 ......

我在这做错了什么?

Pas*_*TIN 5

不确定你要做什么,但是,如果你想whatever为每个项目调用你的函数myvar,你应该使用这个:

  for (i = 0; i < count; i++)
    whatever(myvar[ i ], thing);
Run Code Online (Sandbox Code Playgroud)

请注意i而不是myvar.length - 1

  • @Shad:如果你只想要编号而不是所有这些,那就不是了 (2认同)