[ {name:'hi',data:'1,2,3,4,5'} , {name:'hello',data:'5,4,3,2,1'} ]
то, что мне нужно, чтобы применить разделение на data
каждого объекта в массиве, так что результат будетJavascript применить функцию к каждому элементу в массиве объектов
[ {name:'hi',data:[1,2,3,4,5]} , {name:'hello',data:[5,4,3,2,1]} ]
я знаю, я могу цикл массив, использующий для каждого и создающий новый массив, но есть ли лучший, более быстрый метод?
var arr = [{
name: 'hi',
data: '1,2,3,4,5'
}, {
name: 'hello',
data: '5,4,3,2,1'
}];
var new_arr = [];
for (i in arr) {
var temp = {};
temp.name = arr[i].name;
temp.data = arr[i].data.split(',');
new_arr.push(temp);
}
вам нужно сделать новый массив ли? Можете ли вы просто настроить оригинал? – epascarello
[Array.prototype.map] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map) – Barmar
Не используйте 'for ... in' loop итерации массивов! – Oriol