AngularJS“意外令牌[”初始化对象数组

时间:2017-02-21 13:57:42

标签: javascript angularjs

这有什么问题:

  var a = "1";
  var b = {};
  var b[a] = 'test';

根据this SO question,以上内容有效。但var b[a] = 'test'在AngularJS(v1)中生成此错误:

  

未捕获的SyntaxError:意外的令牌[

1 个答案:

答案 0 :(得分:6)

这一行:

var b[a] = 'test';

无效,因为变量名称中不允许使用字符[]

如果您不希望在该行上声明新变量,而只是将一个键/值对分配给对象b,则可以删除var

b[a] = 'test'; //b now equals { "1": "test" }