gpt4 book ai didi

javascript - 如何使用 Javascript Underscore.js 的 _.sortBy() 方法在 javascript 中按多个键对对象数组进行排序?

转载 作者:行者123 更新时间:2023-11-28 17:27:18 26 4
gpt4 key购买 nike

我使用 Javascript Underscore.js_.sortBy() 方法按多个键对对象数组进行排序。我在名称对象中使用名字和姓氏进行排序。

我的代码:

var names = [
{ fname: 'Chloe', lname: 'Bennet' },
{ fname: 'Adam', lname: 'Levine' },
{ fname: 'Chris', lname: 'Hemsworth' },
{ fname: 'Justin', lname: 'Bieber' },
{ fname: 'Chloe', lname: 'Moretz' },
{ fname: 'Taylor', lname: 'Swift' }
];

console.log(_.sortBy(someData, 'fname' + ' ' + 'lname')

预期结果:

{ fname: 'Adam', lname: 'Levine' },
{ fname: 'Chloe', lname: 'Bennet' },
{ fname: 'Chloe', lname: 'Moretz' },
{ fname: 'Chris', lname: 'Hemsworth' },
{ fname: 'Justin', lname: 'Bieber' },
{ fname: 'Taylor', lname: 'Swift' }

但它没有对数组进行排序。

最佳答案

您需要提供更复杂比较的函数:

var names = [
{ fname: 'Chloe', lname: 'Bennet' },
{ fname: 'Adam', lname: 'Levine' },
{ fname: 'Chris', lname: 'Hemsworth' },
{ fname: 'Justin', lname: 'Bieber' },
{ fname: 'Chloe', lname: 'Moretz' },
{ fname: 'Taylor', lname: 'Swift' }
];

console.log(_.sortBy(names, ({ fname, lname }) => fname + ' ' + lname))
.as-console-wrapper {max-height: 100% !important;}
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js"></script>

关于javascript - 如何使用 Javascript Underscore.js 的 _.sortBy() 方法在 javascript 中按多个键对对象数组进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51260267/

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