使用 Lodash 对数字字符串数组进行排序
sort array of numeric strings with Lodash
_.sortBy(arrData, "rhid");
此代码对数组进行排序,但由于字段"rhid"的值是字符串,因此顺序被弄乱了。我怎样才能像"rhid"一样排序,其中 int 字段。
谢谢
sortBy
可以与函数而不是属性名称一起使用。
_.sortBy(arrData, function (obj) {
return parseInt(obj.rhid, 10);
});
这可以使用箭头符号来实现,如下所示:
_.sortBy(arrData, (obj) => parseInt(obj.val, 10));
如果你想做多个字段,如@GunasekaranR询问,你也可以用箭头符号来做:
_.sortBy(arrData, [
(obj) => parseInt(obj.first_val, 10),
(obj) => parseInt(obj.second_val, 10)
]);
第二种方式使用 first_val
作为主要排序对象,second_val
是决胜局。
如果 rhid 是数字,那么你可以这样做
orderBy(
arrData,
function (o) {
return new Number(o.rhid);
},
["asc"]
),
这里提到
相关文章:
- JavaScript数组排序(函数)用于对表行进行排序,而不是排序
- Javascript中的多维数组排序索引问题
- 如何按日期对Javascript对象数组排序
- 数组排序后显示更改
- 当许多元素相等时,Javascript数组排序无法正常工作
- Javascript数组排序速度受字符串长度的影响
- 按唯一键将对象数组排序为数组
- 以 js 为单位的数组排序
- js 数组排序无法正常工作
- 数组排序.论点从何而来
- 不需要的数组排序
- 数组排序不正确/不可预测,使用 indexOf 时
- Javascript将数组排序到树中
- 随后的多维数组排序会产生意外的结果
- 数组排序基于纯javascript搜索文本匹配
- Javascript自定义数组按数组排序
- 使用字符串按属性错误对对象进行数组排序
- 多维数组排序
- JavaScript与PHP在数组排序中的对比
- Javascript-关联数组排序