【发布时间】:2016-05-27 03:53:40
【问题描述】:
有一个 JS 对象数组。对象具有以下属性:
- 年
- 姓名
- 工资
数组按(年份+名称)排序。它给出了“name”属性中只有 2 个不同的值。
目标是生成另一个 JS 数组,按年份排序,仅包含具有 2 个属性的对象:
- 年
- 100 *(姓名#1 的工资)/(姓名#2 的工资)
如果其中一个工资不存在或给定年份为 0,则不会为今年创建对象外壳。
我尝试使用 _lodash(我不确定这是不是正确的工具):
var groupByYear =_.groupby(myArray, function(element){
return element.year;
};
return _.map(groupByYear, function(el){
if (el.size() == 2 and el[0].salary > 0 and el[1].salary > 0)
return { "year": el[0].year , "percent": 100 * el[0].salary / el[1].salary };
}
但我不确定这是正确的方法;例如创建名为 groupByYear 的中间数组。
【问题讨论】:
-
如果您提供示例输入数据和示例输出,我们会更容易为您提供帮助。
-
请输入完整的示例输入和完整的示例输出
标签: lodash