我有以下数组:
var arr = [{name: "one name"}, {name: "second name"}, {name: "third name"}]
我的目标是拥有这样的数组:
var result = ["one name", "second name", "third name"]
我正在玩这样的事情,只是不能做对:
var result = [];
for (var i=0; i<arr.length; i++) {
result[arr[i]] = arr[i].NAME;
}
我的错误是什么?
我正在寻找如何纠正我的代码并使用for循环代替数组映射
答案 0 :(得分:2)
这是使用for
循环来修复代码的方法
var arr = [{name: "one name"}, {name: "second name"}, {name: "third name"}]
var result = [];
for (var i=0; i<arr.length; i++) {
result[i] = arr[i].name;
}
console.log(result);
但使用map
会更加惯用javascript。
答案 1 :(得分:1)
您可以使用Array#map
映射属性值。
var array = [{name: "one name"}, {name: "second name"}, {name: "third name"}],
result = array.map(a => a.name);
console.log(result);
&#13;
答案 2 :(得分:0)
您只需使用.map()
命令执行以下操作:
const result = arr.map(i => i.name)