Написать функцию которая принимает массив строк. Функция добавляет к каждому элементу массива фамилию "Smith" после чего передает получившийся массив

Не совсем понимаю как создать функцию, которая будет выполнять map и передавать его callback?

const arrayOfNames = ["Jane", "Alex", "Valerchik", "Sacha", "Anna"];

const lastNameArray = arrayOfNames.map((item, callback, callback2) => {
  return item + " Smith";
});

Ответы (1 шт):

Автор решения: SwaD

Надо просто вернуть результат работы map внутри функции

const arrayOfNames = ["Jane", "Alex", "Valerchik", "Sacha", "Anna"];

function lastNameArray(arr) {
    return arr.map((item) => {
        return item + " Smith";
    });
}

console.log(lastNameArray(arrayOfNames));

Или функция в одну строку:

const arrayOfNames = ["Jane", "Alex", "Valerchik", "Sacha", "Anna"];

const lastNameArray = (arr) => arr.map(item => item + " Smith");

console.log(lastNameArray(arrayOfNames));

Если результат надо передать в callBack функцию

const arrayOfNames = ["Jane", "Alex", "Valerchik", "Sacha", "Anna"];

const cbFunction = (res) => console.log(res);

const lastNameArray = (arr, cb) => cb(arr.map(item => item + " Smith"));

lastNameArray(arrayOfNames, cbFunction);

→ Ссылка