Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/408.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript属性:由字符串构建_Javascript_String_Javascript Objects - Fatal编程技术网

Javascript属性:由字符串构建

Javascript属性:由字符串构建,javascript,string,javascript-objects,Javascript,String,Javascript Objects,我需要用字符串构建一个对象属性 但是我如何使用这个字符串的值作为属性名呢 var x = 'a'; var y = 'b'; var xy = x + y; var z = { xy: 'some text' }; 现在我可以通过z['xy']访问它,但不能通过z['ab']您正在尝试编写的 var z = {}; z[xy] = 'some text'; 您不能使用对象文字来执行此操作。因为-不可能使用对象文字。。。不过,您可以使用数组: var x = 'a'; var y =

我需要用字符串构建一个对象属性 但是我如何使用这个字符串的值作为属性名呢

var x = 'a';
var y = 'b';
var xy = x + y;

var z = {
    xy: 'some text'
};
现在我可以通过
z['xy']
访问它,但不能通过
z['ab']

您正在尝试编写的

var z = {};
z[xy] = 'some text';
您不能使用对象文字来执行此操作。

因为-不可能使用对象文字。。。不过,您可以使用数组:

var x = 'a';
var y = 'b';
var xy = x + y;

var z = [];  // define array
z[xy]='some text';​​​
alert(z['ab']); // outputs 'some text'
​
好的,我怎么能做到这一点(没有对象文字)?