つまり、これを行うことは可能ですか?
var fruit = "banana";
var x = {
"app" + "le" : 5, // "apple" : 5
function(){return "orange"} : 8, // "orange" : 8
"" + fruit : 3 // "banana" : 3
};
つまり、これを行うことは可能ですか?
var fruit = "banana";
var x = {
"app" + "le" : 5, // "apple" : 5
function(){return "orange"} : 8, // "orange" : 8
"" + fruit : 3 // "banana" : 3
};
いいえ、できません。最初の初期化後にフィードする必要があります。
var myKeyName = "bar";
x[myKeyName] = "foo";
空のオブジェクトを宣言し、後で文字列を作成する必要があります。オブジェクトリテラルは、その名前に有効な文字列を必要とします
'orange'の関数を実行せず、定義しない場合、'orange'にしたい名前は、代わりに関数全体の文字列になります。
var fruit = "banana";
var x = {};
x["app" + "le"]=5;
x[(function(){return "orange"})()]=8;
x[fruit]=3;
/* returns x={
apple: 5,
banana: 3,
orange: 8
}