Javascript AngularJS“;意外标记[“初始化对象数组”

Javascript AngularJS“;意外标记[“初始化对象数组”,javascript,angularjs,Javascript,Angularjs,这有什么问题吗 var a = "1"; var b = {}; var b[a] = 'test'; 根据,上述内容是有效的。但是,var b[a]=“test”在AngularJS(v1)中生成此错误: 未捕获的语法错误:意外标记[ 这一行: var b[a] = 'test'; 无效,因为变量名中不允许使用字符[和] 如果您不希望在该行声明新变量,而只是将一个键/值对分配给对象b,您可以删除var: b[a] = 'test'; //b now equals { "1":

这有什么问题吗

  var a = "1";
  var b = {};
  var b[a] = 'test';
根据,上述内容是有效的。但是,
var b[a]=“test”
在AngularJS(v1)中生成此错误:

未捕获的语法错误:意外标记[

这一行:

var b[a] = 'test';
无效,因为变量名中不允许使用字符
[
]

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

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

var b[a] = 'test';
无效,因为变量名中不允许使用字符
[
]

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

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

从第三行删除
var
,它将与该问题相同。DOH!我正盯着它看。从第三行删除
var
,它将与该问题相同。DOH!我正盯着它看。是的,我实际上在初学者中经常看到类似的东西。
var
仅适用于declaring/“创建”一个新变量。While
b[a]
当前不存在,它不是一个变量;它是属于变量
b
的对象的属性。同样,在为现有var赋值时,您不需要
var
,例如
a=2;
。是的,我实际上在初学者中经常看到类似的东西。
var
仅在r声明/“创建”一个新变量。虽然
b[a]
当前不存在,但它不是一个变量;它是属于变量
b
的对象的属性。同样,在为现有变量赋值时,不需要
var
,例如
a=2;