【问题标题】:How do I groupby and count json results using linqjs如何使用 linqjs 对 json 结果进行分组和计数
【发布时间】:2014-11-19 16:23:28
【问题描述】:

我想从我的 web 方法返回一些 json,在客户端我可以使用 linqjs 进行分组和计数。

一些模拟数据看起来像......

var data = [
    { Name: "Bob" },
    { Name: "Bob" },
    { Name: "Ann" },
    { Name: "Charlie" },
    { Name: "Charlie" },
    { Name: "Charlie" }
];

我希望 linqjs 查询的结果生成一个对象数组......

var results = [
    { "Name": "Bob", "Count": 2 },
    { "Name": "Ann", "Count": 1 },
    { "Name": "Charlie", "Count": 3 }
];

然后我可以在我的 html 上填充选择列表的车把模板中使用结果。

这是一个我认为已经接近但我的计数仍然关闭的示例......

var groupedNames = Enumerable.From(data).GroupBy("$.Name", null,
       function (key, g) {
           var result = {
               Name: key,
               Count: g.Sum(g + 1)
           }
           return result;
       }).ToArray();

alert(groupedNames);

有人对如何在 linqjs 中实现这一点有任何建议吗?

【问题讨论】:

    标签: javascript linq.js


    【解决方案1】:

    要计算组中的项目,请使用Count() 方法。

    var query = Enumerable.From(data)
        .GroupBy("$.Name", null, "{ Name: $, Count: $$.Count() }")
        .ToArray();
    

    【讨论】:

      猜你喜欢
      • 2018-07-16
      • 1970-01-01
      • 2017-07-02
      • 2020-02-08
      • 1970-01-01
      • 2021-11-29
      • 1970-01-01
      • 2013-07-23
      • 1970-01-01
      相关资源
      最近更新 更多