linq.js:GroupBy(),然后是ToJSON()

时间:2012-08-18 10:28:57

标签: javascript json linq.js

我是linq.js的新手。我想做一个GroupBy(),然后转换为JSON。但是,我回来了一个字符串数组。

var data = [ { "Gender":"M" }, { "Gender":"M" }, { "Gender":"F" } ];
var grouped_dt = Enumerable.From(data).GroupBy("$.Gender", "", 'key,e=>key+":"+e.Count()', "").ToJSON();

我的结果看起来像这样:[ "M:2", "F:1" ],几乎看起来不像JSON(此外它是string;我可以立即alert()

有人知道我的语法在哪里搞砸了吗?坦白:data只是我通过AJAX从服务器获取的数据的简化版本,但它完全采用JSON格式。

1 个答案:

答案 0 :(得分:0)

原来我需要为每个值指定一个键(遵循实际的JSON格式)。

var grouped_dt = Enumerable.From(data).GroupBy("$.Gender", "key,e=>{name:key,y:e.Count()}", "").ToJSON();

完成此操作后,我还需要

var jsonData = $.parseJSON(grouped_dt);

将其转换为JSON对象以供使用。