Почему не работает reduce
let vasya = { name: "Вася", age: 25 };
let petya = { name: "Петя", age: 30 };
let masha = { name: "Маша", age: 28 };
let users = [ vasya, petya, masha ]
let names = users.reduce((arr, user) => arr.push(user.name), [])
alert(names)
Я ожидал, что arr будет массивом имён, но при второй и последующих итерациях там undefined, а не массив |
lgick,
где return arr?!!! |
Цитата:
let vasya = { name: "Вася", age: 25 };
let petya = { name: "Петя", age: 30 };
let masha = { name: "Маша", age: 28 };
let users = [ vasya, petya, masha ]
let names = users.map(el => el.name)
alert(names)
|
lgick,
Пожалуйста, отформатируйте свой код! Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [html run] ... минимальный код страницы с вашей проблемой [/html] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
let vasya = { name: "Вася", age: 25 };
let petya = { name: "Петя", age: 30 };
let masha = { name: "Маша", age: 28 };
let users = [ vasya, petya, masha ]
let names = users.reduce((arr, user) => {
arr.push(user.name)
return arr
}, [])
alert(names)
так работает, но я думал без "{", "}" и return тоже должно работать |
Цитата:
Оператор «запятая» |
let vasya = { name: "Вася", age: 25 };
let petya = { name: "Петя", age: 30 };
let masha = { name: "Маша", age: 28 };
let users = [ vasya, petya, masha ]
let names = users.reduce((arr, user) => (arr.push(user.name), arr), [])
alert(names)
работает. |
lgick,
/ добавьте |
Цитата:
|
пытаюсь, нажимаю сохранить, а он не сохраняет)
|
| Часовой пояс GMT +3, время: 20:28. |