1

プログラムでオブジェクトの配列を作成したいと思います。私が期待している最終結果はこれです

[{"nickname":"xxx"},{"nickname":"yyy"},{"nickname":"zzz"}]

これは私のコードです

@tagged_user_array = []
//pingUsers is the array which stored the list or nicknames 'xxx', 'yyy' and 'zzz'
$.each @pingUsers, (index, nick) =>
   @tagged_user_array.push(nick)

上記のコードでは、期待した結果を得ることができません。期待どおりの結果を得るには、何を変更する必要がありますか?

4

2 に答える 2

2

CoffeeScript を使用しており、ループは CoffeeScript の式であるため、代わりに内包表記を使用できます。

pingUsers = ["xxx", "yyy", "zzz"]
tagged_user_array = ({nickname: value} for value in pingUsers)

デモ: http://jsfiddle.net/ambiguous/w4ugV/1/

于 2012-05-17T15:43:12.263 に答える
1

これを試して:

var pingUsers = ["xxx", "yyy", "zzz"];
var tagged_user_array = [];

$.each(pingUsers, function(index, value)  {
    tagged_user_array.push({ "nickname" : value });
});

フィドルの例

@これは javascript では無効であるため、変数の前に を付けた理由がわかりません。

于 2012-05-17T08:55:28.817 に答える