// 已知数组数据列表
let data = [
{ num: 2, city: '深圳', type: '美食' },
{ num: 1, city: '北京', type: '高校' },
{ num: 4, city: '上海', type: '风景' },
{ num: 3, city: '广州', type: '汽车' },
]
console.log('原来数组是:', data);
// 按照规定序号排序
let sortArr = [1, 2, 3, 4]
let resArr = []
sortArr.forEach((item, index) => {
let itemObj = {
num: item,
city: '',
type: ''
}
let targetData = data.filter(o => item && item == o.num)
itemObj.city = targetData.length > 0 ? targetData[0].city : ''
itemObj.type = targetData.length > 0 ? targetData[0].type : ''
resArr.push(itemObj)
})
console.log('按照【序号排序】后的结果是:', resArr);
// 按照规定城市名称排序
let sortArrCity = ["北京", "上海", "广州", "深圳"]
let resArrCity = []
sortArrCity.forEach((item, index) => {
let itemObj = {
num: '',
city: item,
type: ''
}
let targetData = data.filter(o => item && item == o.city)
itemObj.num = targetData.length > 0 ? targetData[0].num : ''
itemObj.type = targetData.length > 0 ? targetData[0].type : ''
resArrCity.push(itemObj)
})
console.log('按照【城市排序】后的结果是:', resArrCity);