是否有可以将数组['A', 'B', 'C']
转换为对象数组[{name: 'A'}, {name: 'B'}, {name: 'C'}]
的函数
或者我需要写一个util函数?写一个没什么大不了的,只是好奇一个众所周知的函数是否已经存在了。
谢谢
发布于 2018-09-18 04:11:03
您可以使用Array.prototype.map()。Array.map是一个方法,它将迭代数组中的每个元素,并根据回调返回输出。您可以在MDN:https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Array/map上找到有关Array.map的更多信息
下面是一个有效的示例:https://jsbin.com/qawener/edit?js,console
在本例中,我们获取数组的每个元素,并返回一个带有{"name":}的对象。这将创建具有[{name: 'A'}, {name: 'B'}, {name: 'C'}]
的newArray数组。
const originalArray = ["a", "b", "c"];
let newArray = originalArray.map(element => { return {name: element}; });
console.log(newArray);
发布于 2018-09-18 04:14:44
Map非常适用于这些类型的情况。
const array = ['A', 'B', 'C'];
const myNewArray = array.map(function(map, i) {
const dict = {"name":array[i]}
return dict;
}, {});
console.log(myNewArray)
发布于 2018-09-18 04:55:40
除了给定的答案之外,您还可以对对象使用short hand properties。
const
names = ["a", "b", "c"],
result = names.map(name => ({ name }));
console.log(result);
https://stackoverflow.com/questions/52374967
复制相似问题