Редактировать
Меню
    наверх

    Lodash документация на русском (Функции) часть 1

    Lodash документация на русском

    “Функции” - часть 1

    .after(n, func)

    source, npm package.

    Противоположно _.before; Этот метод создает функцию, которая вызывает функцию func, когда она вызывается n или более раз.

    Версия: 0.1.0

    Аргументы

    n (number): Число вызовов после которого вызывается func. func (Function): Функция для ограничения.

    Возвращает

    (Function): Возвращает новую ограниченную функцию.

    Пример

    var saves = ['profile', 'settings'];
     
    var done = _.after(saves.length, function() {
      console.log('done saving!');
    });
     
    _.forEach(saves, function(type) {
      asyncSave({ 'type': type, 'complete': done });
    });
    // => Logs 'done saving!' after the two async saves have completed.
    

    .ary(func, [n=func.length])

    source, npm package.

    Создает функцию, которая вызывает func, до n аргументов, игнорируя любые дополнительные аргументы.

    Версия: 3.0.0

    Аргументы

    func (Function): Функция для ограничения аргументов. [n=func.length] (number): arity заглушка

    Возвращает

    (Function): Возвращает новую ограниченную функцию.

    Пример

    _.map(['6', '8', '10'], _.ary(parseInt, 1));
    // => [6, 8, 10]
    

    .before(n, func)

    source, npm package.

    Создает функцию, которая вызывает func, с этой привязкой и аргументами для создания функции, пока эти вызовы меньше n раз.

    Последующие вызовы созданной функции возвращают результат последнего вызова func.

    Версия: 3.0.0

    Аргументы

    n (number): Число вызовов после которого вызывается func. func (Function): Функция для ограничения.

    Возвращает

    (Function): Возвращает новую ограниченную функцию.

    Пример

    jQuery(element).on('click', _.before(5, addContactToList));
    // => Allows adding up to 4 contacts to the list.
    

    .bind(func, thisArg, [partials])

    source, npm package.

    Создает функцию, которая вызывает func с привязкой thisArg и partials, предшествующей полученным аргументам.

    Значение _.bind.placeholder, которое по умолчанию равно _ в монолитных билдах, может использоваться в качестве заполнителя для частично применяемых аргументов.

    Заметка: В отличие от нативного Function # bind, этот метод не устанавливает свойство length для связанных функций.

    Версия: 0.1.0

    Аргументы

    func (Function): Функция для связывания. thisArg (*): Это связывание func. [partials] (...*): Аргументы, которые должны быть частично применены.

    Возвращает

    (Function): Возвращает новую связанную функцию.

    Пример

    function greet(greeting, punctuation) {
      return greeting + ' ' + this.user + punctuation;
    }
     
    var object = { 'user': 'fred' };
     
    var bound = _.bind(greet, object, 'hi');
    bound('!');
    // => 'hi fred!'
     
    // Bound with placeholders.
    var bound = _.bind(greet, object, _, '!');
    bound('hi');
    // => 'hi fred!'
    

    .bindKey(object, key, [partials])

    source, npm package.

    Создает функцию, которая вызывает метод в object[key], при этом partials предшествует аргументам, которые он получает.

    Этот метод отличается от _.bind позволяя связанным функциям ссылаться на методы, которые могут быть переопределены или еще не существуют.

    Прочтите Peter Michaux’s article для большего понимания.

    Значение _.bindKey.placeholder, которое по умолчанию равно _ в монолитных билдах, может использоваться как местозаполнитель для частично применяемых аргументов.

    Версия: 0.1.0

    Аргументы

    object (Object): Объект для вызова метода on. key (string): Ключ метода. [partials] (...*): Аргументы, которые должны быть частично применены.

    Возвращает

    (Function): Возвращает новую связанную функцию.

    Пример

    var object = {
      'user': 'fred',
      'greet': function(greeting, punctuation) {
        return greeting + ' ' + this.user + punctuation;
      }
    };
     
    var bound = _.bindKey(object, 'greet', 'hi');
    bound('!');
    // => 'hi fred!'
     
    object.greet = function(greeting, punctuation) {
      return greeting + 'ya ' + this.user + punctuation;
    };
     
    bound('!');
    // => 'hiya fred!'
     
    // Bound with placeholders.
    var bound = _.bindKey(object, 'greet', _, '!');
    bound('hi');
    // => 'hiya fred!'
    

    .curry(func, [arity=func.length])

    source, npm package.

    Создает функцию, которая принимает аргументы func и либо вызывает func, возвращающий его результат, если было предоставлено хотя бы arity количество аргументов, либо функция, которая принимает остальные аргументы func, и т. Д. Аргумент func может быть указан, если func.length недостаточно.

    Значение _.curry.placeholder, которое по умолчанию равно _ в монолитных билдах, может использоваться как местозаполнитель для предоставленных аргументов.

    Заметка: Этот метод не устанавливает свойство length для функций, выполняемых с помощью curried.

    Версия: 2.0.0

    Аргументы

    func (Function): curry функция. [arity=func.length] (number): arity заглушка для func.

    Возвращает

    (Function): Возвращает новую curried функцию.

    Пример

    var abc = function(a, b, c) {
      return [a, b, c];
    };
     
    var curried = _.curry(abc);
     
    curried(1)(2)(3);
    // => [1, 2, 3]
     
    curried(1, 2)(3);
    // => [1, 2, 3]
     
    curried(1, 2, 3);
    // => [1, 2, 3]
     
    // Curried with placeholders.
    curried(1)(_, 3)(2);
    // => [1, 2, 3]
    

    .curryRight(func, [arity=func.length])

    source, npm package.

    Этот метод подобен .curry За исключением того, что аргументы применяются к func в порядке .partialRight вместо .partial.

    Значение _.curryRight.placeholder, которое по умолчанию равно _ в монолитных билдах, может использоваться в качестве заполнителя для предоставленных аргументов.

    Заметка: Этот метод не устанавливает свойство length для функций, выполняемых с помощью curried.

    Версия: 3.0.0

    Аргументы

    func (Function): curry функция. [arity=func.length] (number): arity заглушка для func.

    Возвращает

    (Function): Возвращает новую curried функцию.

    Пример

    var abc = function(a, b, c) {
      return [a, b, c];
    };
     
    var curried = _.curryRight(abc);
     
    curried(3)(2)(1);
    // => [1, 2, 3]
     
    curried(2, 3)(1);
    // => [1, 2, 3]
     
    curried(1, 2, 3);
    // => [1, 2, 3]
     
    // Curried with placeholders.
    curried(3)(1, _)(2);
    // => [1, 2, 3]
    

    .debounce(func, [wait=0], [options={}])

    source, npm package.

    Создает функцию debounced, которая задерживает вызов func, до тех пор, пока не истечет миллисекунды ожидания с момента последнего вызова функции debounced.

    Функция debounced использует метод cancel для отмены отложенных func-вызовов и метод flush для немедленного вызова.

    Укажите параметры, указывающие, следует ли вызывать func на ведущем и/или заднем фронтах таймаута ожидания.

    func вызывается с последними аргументами, предоставленными функцией debounced.

    Последующие вызовы функции debounced возвращают результат последнего вызова func.

    Заметка: Если начальные и конечные значения равны true, func вызывается на заднем фронте таймаута, только если выведенная функция вызывается более чем один раз во время ожидания.

    Если wait равно 0, а lead - false, вызов func откладывается до следующего тика, похож на предыдущий метод setTimeout с тайм-аутом 0.

    Прочтите David Corbacho’s article для большего понимания по поводу различий между .debounce и .throttle.

    Версия: 0.1.0

    Аргументы

    func (Function): Функция debounce. [wait=0] (number): Количество миллисекунд задержки. [options={}] (Object): Параметры объекта. [options.leading=false] (boolean): Укажите вызов по переднему фронту тайм-аута. [options.maxWait] (number): Максимальное время func на которое он может быть отложено до его вызова. [options.trailing=true] (boolean): Укажите вызов на заднем фронте тайм-аута.

    Возвращает

    (Function): Возвращает новую debounced функцию.

    Пример

    // Avoid costly calculations while the window size is in flux.
    jQuery(window).on('resize', _.debounce(calculateLayout, 150));
     
    // Invoke `sendMail` when clicked, debouncing subsequent calls.
    jQuery(element).on('click', _.debounce(sendMail, 300, {
      'leading': true,
      'trailing': false
    }));
     
    // Ensure `batchLog` is invoked once after 1 second of debounced calls.
    var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
    var source = new EventSource('/stream');
    jQuery(source).on('message', debounced);
     
    // Cancel the trailing debounced invocation.
    jQuery(window).on('popstate', debounced.cancel);
    

    .defer(func, [args])

    source, npm package.

    Отменяет вызов func до тех пор, пока текущий стек вызовов не будет очищен. Любые дополнительные аргументы предоставляются func, когда он вызывается.

    Версия: 0.1.0

    Аргументы

    func (Function): Функция для отсрочки. [args] (...*): Аргументы для вызова func.

    Возвращает

    (number): Возвращает идентификатор таймера.

    Пример

    _.defer(function(text) {
      console.log(text);
    }, 'deferred');
    // => Logs 'deferred' after one millisecond.
    

    .delay(func, wait, [args])

    source, npm package.

    Вызывает func после ожидания миллисекунд. Любые дополнительные аргументы предоставляются func, когда он вызывается.

    Версия: 0.1.0

    Аргументы

    func (Function): Функция для задержки. wait (number): Количество миллисекунд для задержки вызова. [args] (...*): Аргументы для вызова func.

    Возвращает

    (number): Возвращает идентификатор таймера.

    Пример

    _.delay(function(text) {
      console.log(text);
    }, 1000, 'later');
    // => Logs 'later' after one second.
    

    Часть 2

    Информация о посте
    Колличество слов
    1983
    Дата создания
    03 апреля 2017
    Комментарии