У меня есть вопрос о следующем, я должен создать list2 из list1, поэтому я применил решение 1, которое работало хорошо.Однако мне пришлось сделать это отдельной функцией для модульного тестирования.После его изменения я не смог сделать его похожим на решение 2. Если я печатаю возвращаемое значение, оно говорит неопределенное для 3 элементов массива.У кого-нибудь есть совет по этой проблеме?Я очень старался, но я до сих пор не могу решить это.
var list1 = [
{ firstName: 'Sofia', lastName: 'I.', country: 'Argentina', continent: 'Americas', age: 35, language: 'Java' },
{ firstName: 'Lukas', lastName: 'X.', country: 'Croatia', continent: 'Europe', age: 35, language: 'Python' },
{ firstName: 'Madison', lastName: 'U.', country: 'United States', continent: 'Americas', age: 32, language: 'Ruby' }
];
var list2 = [
{ firstName: 'Sofia', lastName: 'I.', country: 'Argentina', continent: 'Americas', age: 35, language: 'Java',
greeting: 'Hi Sofia, what do you like the most about Java?'
},
{ firstName: 'Lukas', lastName: 'X.', country: 'Croatia', continent: 'Europe', age: 35, language: 'Python',
greeting: 'Hi Lukas, what do you like the most about Python?'
},
{ firstName: 'Madison', lastName: 'U.', country: 'United States', continent: 'Americas', age: 32, language: 'Ruby',
greeting: 'Hi Madison, what do you like the most about Ruby?'
}
];
Раствор 1
let greetings1 = list1.map(person => {
return Object.assign(
{ firstName: person.firstName },
{ lastName: person.lastName },
{ country: person.country },
{ continent: person.continent },
{ age: person.age },
{ language: person.language },
{
greeting: `Hi ${person.firstName}, what do you like the most about ${
person.language
}?`
}
);
});
Раствор 2
function greetDevelopers(list1) {
const greetings = list1.map(person => {
Object.assign(
{ firstName: person.firstName },
{ lastName: person.lastName },
{ country: person.country },
{ continent: person.continent },
{ age: person.age },
{ language: person.language },
{
greeting: `Hi ${person.firstName}, what do you like the most about ${
person.language
}?`
}
);
});
return greetings;
}