[英]Javascript equivalent of php's $object->{$stringvar} = 1 without eval()?
如何在不使用 eval() function 的情况下从其他变量的值创建 object 的属性?
使用数组表示法:
obj[stringvar] = 1;
var object = {}, stringvar = "name";
object[stringvar] = 1;
您可以使用其他变量作为属性名称,如下所示:
var a = 'property';
var b = {};
b[a] = 'hello';
这也可以通过以下方式访问:
b.property;
像这样使用 object 文字符号:
var method = 'foo()';
// call it
myobject[method];
所以你会这样做:
object[stringvar] = 1;
使用括号表示法:
var o = { key: 'value' };
var member = 'key';
o[member] = 'oherValue';
var myobject = {};
var stringvar = "test";
myobject[stringvar] = 1;
Javascript 对象允许按需创建属性。 只需设置您想要的属性:
var object = {name:'A', id:1};
object.description = "Test";
alert(object.description);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.