我想创建一个名称字符串数组
function namesOnly(arr) {
}
namesOnly([
{
name: "Angelina Jolie",
age: 80
},
{
name: "Eric Jones",
age: 2
},
{
name: "Paris Hilton",
age: 5
},
{
name: "Kayne West",
age: 16
},
{
name: "Bob Ziroll",
age: 100
}
])
// expect: ["Angelina Jolie", "Eric Jones", "Paris Hilton", "Kayne West", "Bob Ziroll"]
希望如此!
最佳答案
The
map()
method creates a new array with the results of calling a provided function on every element in the calling array.
function namesOnly(arr) {
return arr.map(i => i.name);
}
var res = namesOnly([
{
name: "Angelina Jolie",
age: 80
},
{
name: "Eric Jones",
age: 2
},
{
name: "Paris Hilton",
age: 5
},
{
name: "Kayne West",
age: 16
},
{
name: "Bob Ziroll",
age: 100
}
])
console.log(res);
虽然我认为 map()
更适合这里,但您也可以使用 for...of
循环:
function namesOnly(arr) {
var names = [];
for (let o of arr)
names.push(o.name);
return names;
}
var res = namesOnly([
{
name: "Angelina Jolie",
age: 80
},
{
name: "Eric Jones",
age: 2
},
{
name: "Paris Hilton",
age: 5
},
{
name: "Kayne West",
age: 16
},
{
name: "Bob Ziroll",
age: 100
}
])
console.log(res);
关于javascript - 创建一个名称字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55993277/