Массив объектов
задачка:
Изучите перебирающие методы массивов: forEach, filter, map. Создайте массив объектов users (~10 объектов), каждый объект имеет поля firstname, lastname, age с разными значениями. Используя встроенные функции массивов: -Отфильтруйте пользователей младше 18 лет -Добавьте каждому объекту поле fullName, которое является конкатенацией имени и фамилии -Сформируйте новый массив, который содержит только полное имя пользователей. Массив обьектов создала,а дальше не получается(( Как работают forEach, filter, map на простых задачах понятно,а как их применить к более сложной не понятно( |
Цитата:
|
Цитата:
|
Цитата:
Напишу,если возникнут вопросы. Спасибо) |
var users=[ { firstname: 'Tanya', lastname: 'Sashyna', age: 25, }, { firstname: 'Lena', lastname: 'Velichko', age: 27, }, { firstname: 'Nastya', lastname: 'Sash', age: 5, } } users.forEach(function(item, i, users) { return users.push(Array['fullName']=Array.firstname+Array.lastname); }); Мне нужно добавить в обьекты,которые находятся в массиве users свойство fullName со значением (конкатенацией) firstname+lastname. В коде выше он мне добавляет NaN в массив. Подскажите как правильно сделать |
Tanya51,
var users=[ { firstname: 'Tanya', lastname: 'Sashyna', age: 25 }, { firstname: 'Lena', lastname: 'Velichko', age: 27 }, { firstname: 'Nastya', lastname: 'Sash', age: 5 } ] users.forEach(function(item, i, users) { item.fullName = item.firstname+" "+item.lastname; }); console.log(users) |
спасибо)
|
function getter() { return this.firstname + ' ' + this.lastname; } users.forEach(function(user) { Object.defineProperty(user, 'fullname', { get: getter }); }); |
спасибо за разъяснение. Теперь понятно стало)
|
Часовой пояс GMT +3, время: 21:49. |