Задать вопрос
@justifycontent

Какую роль играет this?

Есть функция продвинутого коррирования.
Я хочу ее понять.
Вопрос: какую роль играет this в строке return func.apply(this, args) ? Т.е. в контексте чего вызывается func? this по идее равно глобальному объекту в данном случае.

function curry(func) {

    return function curried(...args) {
        if (args.length >= func.length) {
            return func.apply(this, args)
        } else {
            return function(...args2) {
                return curried.apply(this, args.concat(args2))
            }
        }
    }

}

function sum(a, b, c) {
    return a + b + c;
}

const currySum = curry(sum)

console.log(currySum(1)(2)(3))
console.log(currySum(1, 2)(3))
console.log(currySum(1)(2, 3))
console.log(currySum(1, 2, 3))
  • Вопрос задан
  • 111 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ваш ответ на вопрос

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

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