[英]Javascript trying to sort array of objects based on inner object array values
[英]Sort objects inner array and return object
如果我有这样的对象:
const foo = {
title: 'Bar',
numbers: [1, 4, 3, 2],
}
我想对foo.numbers
进行排序并返回新的foo对象。
对数组进行排序很容易foo.numbers.sort((a, b) => b - a)
但这只返回数组。
反正有返回父对象吗?
例如:
const newFoo = sortFooNumbers(foo);
console.log(newFoo);
---
{
title: 'Bar',
numbers: [1, 2, 3, 4],
}
const foo = {
title: 'Bar',
numbers: [1, 4, 3, 2],
}
function sortfoo(obj){
obj.numbers.sort((a, b) => b - a)
return obj
}
sortfoo(foo)
foo.numbers = foo.numbers.sort((a, b) => b - a)
现在,您具有带有已排序数组的更新的foo
。 我假设这就是您想要的。
然后,您可能还需要克隆对象:
const foo = {
title: 'Bar',
numbers: [1, 4, 3, 2],
};
function sortFoo(foo){
const cloned = JSON.parse(JSON.stringify(foo));
cloned.numbers.sort((a,b)=>a-b);
return cloned;
}
const newFoo = sortFoo(foo);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.