Вложенные циклы for не хотят пушить в массив правильно
Добрый день, решал задачку, вроде все написал верно, но почему то в массив result у меня после циклов попадает не то, что выводится в консоль.Как быть?
const data = [
'12,Телепорт бытовой VZHIH-101 ,17,10000',
'77, Меч световой FORCE (синий луч), 2,57000'
];
function parseData(arr, data) {
let result = []
let obj = {}
for (let i in data){
for (let j in arr) {
obj[arr[j]] = data[i].split(',')[j].trim()
}
console.log(obj) // <--здесь то что надо
result.push(obj) // <--здесь не то что надо
}
return result
}
let items = parseData(['id', 'name', 'amount', 'price'], data);
console.log(items);
|
result.push({...obj});
|
https://www.youtube.com/watch?v=4oudziatkLI (первые полторы минуты)
|
ArtyomZaitsev,
<script>
const data = [
'12,Телепорт бытовой VZHIH-101 ,17,10000',
'77, Меч световой FORCE (синий луч), 2,57000'
];
function parseData(arr, data) {
return data.map(function(text) {
return text.split(",").reduce(function(obj, str, index) {
obj[arr[index]] = str.trim();
return obj
}, {})
})
};
let items = parseData(['id', 'name', 'amount', 'price'], data);
document.write(JSON.stringify(items, null, 4));
</script>
|
| Часовой пояс GMT +3, время: 05:31. |