Почему выдаёт ошибку Uncaught TypeError и можно ли это исправить внутри функции?

Есть задание:
Напилить код функции modificator, такой, чтобы в результате работы кода:
function sampleFunc () {
    console.log ( `${arguments.callee.name}: ${arguments[0]} | ${arguments[1]}` )
}

function modificator ( func ) {
    ...
}

testFunc = modificator( sampleFunc )

testFunc()

в консоли было:
sampleFunc: test | sample

Я сделал такой код :
function sampleFunc() {
    console.log(`${arguments.callee.name}: ${arguments[0]} | ${arguments[1]}`)
}

function modificator(func) {
    return func("test", "sample");
}

testFunc = modificator(sampleFunc)

testFunc()


Он работает, но при этом в консоли параллельно выдаёт ошибку Uncaught TypeError: testFunc is not a function. По заданию я не могу ничего изменять кроме функции modificator. Можно ли как-то внутри неё избавиться от этой ошибки? Или это само задание с ошибкой?

Вот CodePen: https://codepen.io/Meinerdi/pen/JqJaop?editors=0010
  • Вопрос задан
  • 71 просмотр
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
Возвращаете из modificator не функцию и пытаетесь вызвать.
Добавьте () => перед вызовом func внутри modificator.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
23 мая 2019, в 04:22
500 руб./в час
22 мая 2019, в 23:03
15000 руб./за проект
22 мая 2019, в 22:44
1000 руб./за проект