我有以下对象数组,例如一些作者,我想通过它们进行映射并返回一个已与某些格式连接的字符串。我出于某种原因对这个相当容易的事情存在问题。
YoutubeStandalonePlayer
我怎样才能将其映射并将其格式化为字符串?
e.g。 const authors = [ { id: 1, name: 'Steven'}, {id: 2, name: 'Nick'}]
let names = authors.map( (a, i) => {
return `${a.name} is cool`
})
console.log(names)
// ["Steven is cool","Nick is cool"]
// but I really want the string "Steven is cool Nick is cool"
答案 0 :(得分:14)
答案 1 :(得分:2)
我更喜欢使用reduce
ES5版
autors.reduce(function (str, person) {
return (str+' '+person.name+ ' is cool');
}, '');
ES6版
autors.reduce((str, person) => `${str} ${person.name} is cool`, '');
答案 2 :(得分:0)
这是另一个版本,因此您无需映射 - >加入..你可以减少。
const authors = [ { id: 1, name: 'Steven'}, {id: 2, name: 'Nick'}]
console.log(authors.reduce( (p,c) => `${p} ${c.name} is cool `, ""))