我需要使用 Linq.js
从 Json 数据中的三个字段中选择两个字段必需的输出应为
[{ "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/
答案 0 :(得分:7)
你的“lambda”函数必须返回一个有效的java对象。
您的查询应该更像这样:
var query = Enumerable.From(data)
.Select("x => { A: x['A'], X: x['C'] }") // object initializer
.ToArray();
答案 1 :(得分:7)
你可以在结果选择器中使用函数而不是lambda(如果lambda表达式不是出于政治原因使用的话:) :( / p>
var findItem = Enumerable.From(Data)
.Select(function(x){
return {
'A': x['A'],
'X': x['C']
};
}).ToArray();