2

文字列からオブジェクト プロパティを作成する必要がありますが、この文字列の値をプロパティ名として使用するにはどうすればよいですか?

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

var z = {
    xy: 'some text'
};

これで、経由ではアクセスできましたz['xy']が、経由ではアクセスできませんでしz['ab']た。

4

2 に答える 2

5

あなたは書き込もうとしています

var z = {};
z[xy] = 'some text';

オブジェクトリテラルを使用してこれを行うことはできません。

于 2012-04-11T15:03:49.823 に答える
0

@SLaksがここで言ったように-オブジェクトリテラルでは不可能です...ただし、配列を使用できます:

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

var z = [];  // define array
z[xy]='some text';​​​
alert(z['ab']); // outputs 'some text'
​
于 2012-04-11T15:25:42.763 に答える