2

Linq.jsを使用してJsonデータから3つのフィールドから2つのフィールドを選択する必要があります

必要な出力は

[{ "A": -27, C: "country 1" } , { "A": 28 , C: "country 2"} ] 

次のパスから「linq.js」を使用します:[ https://raw.github.com/gist/1175460/fb7404d46cab20e31601740ab8b35d99a584f941/linq.js ]

サンプルデータ

var Data = [{ "A": -27, "B": -39, C: "country 1" }, { "A": 28, "B": 0 , C: "country 2"}]

var filter = "  x =>    x['A'], x['C']  ";
var findItem = Enumerable.From(Data)
.Select(filter)
.ToArray();

console.log(findItem);

JsFiddleのコード:http://jsfiddle.net/gLXNw/9/

4

2 に答える 2

7

「ラムダ」関数は、有効なJavaオブジェクトを返す必要があります。

クエリは次のようになります。

var query = Enumerable.From(data)
    .Select("x => { A: x['A'], X: x['C'] }") // object initializer
    .ToArray();
于 2013-02-28T08:20:43.040 に答える
7

ラムダの代わりに結果セレクターで関数を使用できます(ラムダ式が政治的な理由で使用されなかった場合:))

var findItem = Enumerable.From(Data)
.Select(function(x){
    return {
        'A': x['A'], 
        'X': x['C']
    };
}).ToArray();
于 2013-02-28T08:34:29.590 に答える