尝试使用以下代码对表数据进行排序 https://github.com/chuvikovd/multi-column-sort,但如何将自定义对象传递给 SortArray[T]
对象。
我的自定义对象就像
const obj = [{parameter:'firstname', direction: 'ASC'},{parameter:'lastname', direction: 'DESC'}]
如何将 obj
转换为像 [['firstname':'ASC'],'lastname':'DESC']
这样的数组?
答案 0 :(得分:0)
来自docs,
<块引用>sortArrayOrObject
array 或 object 元组数组或对象定义要排序的列、顺序和方向,例如[['name', 'ASC'], ['city', 'DESC']]
或 { name: 'ASC', city: 'DESC' }
。
您可以使用 Array.prototype.map
将输入数组转换为元组数组。
const arr = [{ parameter: 'firstname', direction: 'ASC' }, { parameter: 'lastname', direction: 'DESC' }]
const result = arr.map((item) => [item.parameter, item.direction])
console.log(result)
或者您可以使用 Array.prototype.reduce
将输入数组转换为对象。
const arr = [{ parameter: 'firstname', direction: 'ASC' }, { parameter: 'lastname', direction: 'DESC' }]
const result = arr.reduce((acc, item) => ({
...acc,
[item.parameter]: item.direction,
}), {})
console.log(result)