gpt4 book ai didi

node.js - 尝试在多维数组中使用 .sortBy

转载 作者:太空宇宙 更新时间:2023-11-03 22:34:51 25 4
gpt4 key购买 nike

我正在尝试对我首先嵌套的数组中的子项的“num”进行排序:

_ = require('underscore');

_.nst = require('underscore.nest');

var data = [
{'name' : 'name 1', 'num' : 40},
{'name' : 'name 1', 'num' : 20},
{'name' : 'name 2', 'num' : 10},
{'name' : 'name 2', 'num' : 50},
{'name' : 'name 2', 'num' : 40},
{'name' : 'name 2', 'num' : 70},
{'name' : 'name 2', 'num' : 30}
];


//first I nest the data by the "name"
var newdata = _.nst.nest(data, 'name');

console.log(newdata);

when I log newdata I get:

但是然后我尝试在两个“name”对象中按从高到低的顺序对“num”进行排序

var theSortedChildren0 =  _.sortBy(newdata.children[0].children, 'num');
var theSortedChildren1 = _.sortBy(newdata.children[1].children, 'num');

当我得到这些对象时,它们仍然保持原来的顺序(并且不按 num 排序)

    console.log(theSortedChildren0);
console.log(theSortedChildren1);

最佳答案

如果它解决了您的问题,请查看:

var data = [
{'name' : 'name 1', 'num' : 40},
{'name' : 'name 1', 'num' : 20},
{'name' : 'name 2', 'num' : 10},
{'name' : 'name 2', 'num' : 50},
{'name' : 'name 2', 'num' : 40},
{'name' : 'name 2', 'num' : 70},
{'name' : 'name 2', 'num' : 30}
];

var obj = _.chain(data)
.groupBy('name')
.map(function ( value) {
return _.sortBy(value, 'num');
}).value();

console.log(obj);

关于node.js - 尝试在多维数组中使用 .sortBy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30966787/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com