首先,有这样一段数据
list['zhangsan','lisi','wangmazi']
people[
{
name: 'zhangsan',
username: '张三'
},{
name: 'lisi',
username: '李四'
},{
name: 'wangmazi',
username: '王麻子'
}
]
那么问题来了,怎么list
里面的数据全部替换成people
中相对应的汉字人名呢?
首先,有这样一段数据
list['zhangsan','lisi','wangmazi']
people[
{
name: 'zhangsan',
username: '张三'
},{
name: 'lisi',
username: '李四'
},{
name: 'wangmazi',
username: '王麻子'
}
]
那么问题来了,怎么list
里面的数据全部替换成people
中相对应的汉字人名呢?
const list = ['zhangsan','lisi','wangmazi'];
const people = [
{
name: 'zhangsan',
username: '张三'
},{
name: 'lisi',
username: '李四'
},{
name: 'wangmazi',
username: '王麻子'
}
];
let set = new Set(list);
const newList = people.map(e => {
for (let item of set.values()) {
return item = e.username
}
});
console.log(newList)
这样的话,可以直接reduce people对象数组,根据list中的name获取相应username,然后把list直接指向reduce生成的新username list
额 献丑一下,因为最新刚学了reduce
let userNames = []
people.reduce((accumulator, currentValue) => {
if (list.indexOf(currentValue.name) !== -1) {
accumulator.push(currentValue.username)
}
return accumulator
}, userNames
)
list = userNames
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决