关于javascript:for循环中出现意外的令牌错误,为什么?

Unexpected token error in for loop, why?

1
2
3
4
5
var ccode = ['EUR', 'BRL', 'RUB', 'KRW', 'RON', 'CHF'];
  var i;
  for (var i = 0; i < ccode.length; i++) {
     var ccode[i] = fx.convert(amount, {to: 'ccode[i]'});
  }

var ccode[i]以上的位导致错误

SyntaxError: Unexpected token '['. Expected ';' after variable
declaration.

我还是JS新手所以请耐心等待。

我在这里编辑我的问题,因为人们问我为什么要重新声明var ccode [i]和它因为我需要输出这个:

1
var EUR = fx.convert(amount, {to:"EUR"});


1
2
3
4
5
var ccode = ['EUR', 'BRL', 'RUB', 'KRW', 'RON', 'CHF'];
var i;
  for (i = 0; i < ccode.length; i++) {
     ccode[i] = fx.convert(amount, {to: 'ccode[i]'});
  }

ccode已经声明..不需要使用var


我建议使用数组映射:

1
2
3
4
var ccode = ['EUR', 'BRL', 'RUB', 'KRW', 'RON', 'CHF'];
ccode = ccode.map(function(code) {
  return fx.convert(amount, {to: code})
})


它不是声明ccode两次,因为变量声明语法是错误的

var ccode[i];不应该是数组,请参阅参考

你应该删除var

1
2
3
4
5
var ccode = ['EUR', 'BRL', 'RUB', 'KRW', 'RON', 'CHF'];
  var i;
  for (var i = 0; i < ccode.length; i++) {
     ccode[i] = fx.convert(amount, {to: 'ccode[i]'});
  }