var a = 'this';
我想要
var z = { a: 'that' } === { 'this': 'that'}
其中: -
alert( z.this); // output is 'undefined'
alert(z.a); // output is 'that'
如何使用变量定义z的字段?
那样......
alert( z.this); // output becomes 'that'
用例:动态创建对象z
,而不是对其字段进行硬编码。
答案 0 :(得分:1)
在您的代码中,对象this
没有属性z
,这就是为什么alert(z.this)
显示未定义的原因。您不能将此作为属性名称使用,因为它是保留的关键字。
我认为你需要像这样定义它
var a = 'this';
z[a]="that";
alert( z[a]); // output is 'that'