Что такое учебные программы
Карри - это процесс преобразования, который преобразует функцию, которая принимает несколько параметров в функцию, которая принимает один параметр (Перевод Примечание: первый параметр исходной функции). Если необходимы другие параметры, верните новую функцию, которая принимает оставшиеся параметры и возвращает результат.
Кели химическая функция мысль: идея предварительной обработки JS; Принцип, согласно которому использование выполнения функций может сформировать область, которая не разрушена, может быть сформирован, и все контент, который необходимо предварительно обработать, хранится в этом объеме, который не разрушен, может быть возвращен, и небольшая функция будет выполняться в небольшой функции.
Функция каррики в основном играет роль в предварительной обработке;
Функция метода связывания: предварительно обрабатывать это в методе обратного вызова обратного вызова, передаваемого в контексте контекста;
Кодекс метода BIND Принцип 1 Принцип 1 заключается в следующем:
/*** Принцип реализации метода связывания 1* @param обратный вызов [function] Функция обратного вызова* @param context [object] контекст* @returns {function} Изменить функцию, указанную на этот*/функция Bind (обратный вызов, контекст) {var outerarg = array.prototy.slice.call (аргументы, 2); // Указывает на параметры после Fn и контекст. return function () {var innerarg = array.prototype.slice.call (аргументы, 0); // означает принимать все параметры аргументов в текущей области; callback.apply (context, outerarg.concat (innerarg));}}Следующий код имитирует принцип реализации привязки в цепочке прототипа
/*** Имитируйте принцип реализации привязки в цепочке прототипа (идея корейской и химической функции)* @param context [Object] контекст* @returns {function} изменить функцию, указанную на этом*/function.prototype.mybind = function mybind (context) {var _this = this; var outarg = ray.prototype.slice.call (argements 1); Function.prototype) {return this.bind.apply (this, [context] .concat (outarg));} // возвращать функцию в случае несовместимости () {var inarg = array.prototype.slice.call (аргументы, 0); inarg.length === 0? Inarg. outarg.concat (inarg); _ this.apply (context, arg);}}Функция каррики
В информатике Curry - это метод преобразования функции, которая принимает несколько параметров в функцию, которая принимает один параметр (первый параметр исходной функции), и возвращает новую функцию, которая принимает оставшиеся параметры и возвращает результат.
Керринг означает передачу определенных параметров заранее, чтобы получить простую функцию. Но предварительно проводящиеся параметры сохраняются в закрытии, так что есть некоторые своеобразные особенности. например:
пример:
var adder = function (num) {return function (y) {return num + y;}} var inc = adder (1); var dec = adder (-1); // inc, DEC теперь-две новые функции, которые используются для передачи значения параметра (+/-) 1alert (Inc (99)); // 100alert (dec (101)); // 100alert (adder (100) (2)); // 102alert (adder (2) (100)); // 102Приведенное выше содержание представляет собой функцию JavaScript Curling и метод реализации методов связывания, введенных вам редактором. Я надеюсь, что это будет полезно для всех!