1

次のデータがあるとします。

var json = [ 
{ 'myKey': 'A', 'status': 0 },
{ 'myKey': 'B', 'status': 1 },
{ 'myKey': 'C', 'status': 1  },
{ 'myKey': 'D', 'status': 1 }
];

次のような変数 "Id" を含む新しい配列を追加したい:

var Id = "aNewLetterFunction";
json.push({'myKey':'+Id+','status':1}); //this doesn't work

+Id+ はネイティブに変数と見なされないため、どうすればよいですか? JSfiddle.net に感謝します。

編集: 利用可能なフィドル


私は次のようなさまざまなことを試しました:

json.push('{"myKey":"'+Id+'","status":1},');

また

var ar1 = '{"myKey":"';
var Id = Id;
var ar2 = '","status":1},';
json.push(ar1+Id+ar2);
4

3 に答える 3

3

jsonオブジェクトの配列があり、JSON は定義により文字列であるため、おそらく適切な変数名ではありません。

そのメモはさておき、オブジェクト リテラルを作成してプッシュするだけです。

var Id = "aNewLetterFunction";
json.push({
    myKey: Id,
    status: 1 
});
于 2013-02-12T19:49:32.763 に答える
2

オブジェクトを作成します。JSON 文字列は作成しません。

json.push({
    myKey:Id,
    status:'1'
});

JSON に別の値を追加するのではなく、JSON 文字列に解析できるが文字列ではない配列に追加する必要があります。

ライブデモ

于 2013-02-12T19:48:20.950 に答える
2

使うだけ

json.push({'myKey':Id, 'status':1});

変数名の文字列は必要ありませんが、変数を使用しますか?

于 2013-02-12T19:48:55.640 に答える