javaScript一个数组对象根据另一个数组排序

2,270 阅读1分钟
var list = [    {name:'上海',code:'shanghai',},    {name:'西安', code:'xian'},    {name:'深圳', code:'shenzhen'},    {name:'北京', code:'beijing'}];
list.sort((a,b)=>{
    let order=['beijing','xian','shanghai','shenzhen'];
    // 根据在排序数组的index位置进行比较排序
    return order.indexOf(a.code)-order.indexOf(b.code);
});
console.log(list);
/*
*排序后的结果
[
    {name: "北京", code: "beijing"},
    {name: "西安", code: "xian"},
    {name: "上海", code: "shanghai"} ,
    {name: "深圳", code: "shenzhen"}
]
*/