JS根据列表排列对象数组

时间:2022-07-25
本文章向大家介绍JS根据列表排列对象数组,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

应用场景:将对象数组根据指派的数组内容进行排序,未指定的对象按照原始顺序。

const nodeData_ = [

{account:'a',node:1},
{account:'b',node:2},
{account:'c',node:3},
{account:'d',node:4},
{account:'e',node:5},
{account:'f',node:6}

] const sortInfo = ['f','c','b'] nodeData_.sort((a, b) => {

if (sortInfo.indexOf(a.account) === -1 && sortInfo.indexOf(b.account) === -1) {
    return 1
} else if (sortInfo.indexOf(a.account) !== -1 && sortInfo.indexOf(b.account) === -1) {
    return -1
} else if (sortInfo.indexOf(a.account) === -1 && sortInfo.indexOf(b.account) !== -1) {
    return 1
}
return sortInfo.indexOf(a.account) - sortInfo.indexOf(b.account)

}) console.log(nodeData_) 输出结果:

0: {account: "f", node: 6} 1: {account: "c", node: 3} 2: {account: "b", node: 2} 3: {account: "a", node: 1} 4: {account: "d", node: 4} 5: {account: "e", node: 5}