Задать вопрос
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)
  • Вопрос задан
  • 110 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Решения вопроса 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("..."))

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

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

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