logicface
@logicface
Начинающий

Почему не работает callback функция внутри slice()?

Почему моя callback функция не возвращает 5-ку? Как исправить этот код, чтобы он заработал верно:

let str = 'Good Morning'
let paste = 'Evening'
let result = str.slice(0, () => str.indexOf('Morning')) + paste
console.log(result)
  • Вопрос задан
  • 96 просмотров
Решения вопроса 1
Alexandre888
@Alexandre888
Javascript-разработчик
почему моя callback стрелочная функция не возвращает 5-ку?


термин «callback» никак не связан с текущим кодом, почитайте определение на learn.js

- let result = str.slice(0, () => str.indexOf('Morning')) + paste
+ let result = str.slice(0, (() => str.indexOf('Morning'))()) + paste

- () => str.indexOf('Morning');
+ (() => str.indexOf('Morning'))();


вы просто передали стрелочную функцию в .slice, вы не вызвали её.

функция вернёт какое-либо значение только в том случае, если вы её вызовите.

только непонятно, зачем использовать функцию, если можно просто указать str.slice(0, str.indexOf("..."))

подразумеваю, что это тест возможностей языка
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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