@cokpat469

Почему один и тот же код работает в «стрелочной функции», но не работает в «функциональном выражении»?

Имеется код(ниже ссылка на codepen), где при помощью простой функции и цикла вырезаю части строк(.slice).
Вообще код максимально прост. (работа с консолью)
Но проблема в том что функция работает только в стрелочном виде и при том только в строчку без "{}"
Эта же функция, но уже в функциональном выражении возвращает undefined (cтрока с этой функцией закоментирована). И та же стрелочная, но с фигурными скобками тоже возвращает undefined вместо сокращенных строк.
const flights = 'fao93766109;txl2133758440;+bru0943384722;fao93766109;+hel7439299980;fao93766109;+fao93766109;lis2323639855;';

//const getCode = function(s) { s.slice(0, 3).toUpperCase();}
 const getCode = (s) => s.slice(0, 3).toUpperCase();

for (const str of flights.split("+")) {
    const [from, to] = str.split(";");
    console.log(`from ${getCode(from)} to ${getCode(to)}`);
}




Помогите пожалуйста разобраться почему JS работает именно так. Можно даже тыкнуть носом в конкретную документацию.
  • Вопрос задан
  • 90 просмотров
Решения вопроса 1
@cokpat469 Автор вопроса
const getCode = function(s) { return s.slice(0, 3).toUpperCase();}


Спасибо edward_freedom и Fedor Vlasenko
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы