Массив объектов
задачка:
Изучите перебирающие методы массивов: 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, время: 07:43. |