亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

characters

_.after(n, func)

與_.before的相反; 這個(gè)方法創(chuàng)建一個(gè)調(diào)用func的函數(shù),一旦它被調(diào)用n次或更多次。

初始

0.1.0

參數(shù)
  1. n (number):調(diào)用前func的調(diào)用次數(shù)。

  2. func (功能):限制功能。

返回

(功能):返回新的限制功能。

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)

創(chuàng)建一個(gè)函數(shù),調(diào)用func最多n參數(shù),忽略任何附加參數(shù)。

初始

3.0.0

參數(shù)
  1. func (函數(shù)):為參數(shù)加上參數(shù)的函數(shù)。

  2. [n=func.length] (數(shù)字):上限。

返回

(功能):返回新的上限功能。

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

_.before(n, func)

創(chuàng)建一個(gè)函數(shù),該函數(shù)使用創(chuàng)建的函數(shù)functhis綁定和參數(shù)調(diào)用,但調(diào)用時(shí)間少于n次數(shù)。隨后對(duì)創(chuàng)建函數(shù)的func調(diào)用返回上次調(diào)用的結(jié)果。

初始

3.0.0

參數(shù)
  1. n (序號(hào))func不再被調(diào)用的呼叫數(shù)量。

  2. func (功能):限制功能。

返回

(功能):返回新的限制功能。

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

_.bind(func, thisArg, partials)

創(chuàng)建一個(gè)函數(shù),func用它接收的參數(shù)的this綁定thisArgpartials前綴進(jìn)行調(diào)用。

_.bind.placeholder值默認(rèn)為_單體版本,可用作部分應(yīng)用參數(shù)的占位符。

注意:與原生函數(shù)Function#bind綁定不同,此方法不會(huì)設(shè)置綁定函數(shù)的“長度”屬性。

初始

0.1.0

參數(shù)
  1. func (功能):綁定的功能。

  2. thisArg (*):的this綁定func。

  3. [partials] (... *):部分應(yīng)用的參數(shù)。

返回

(函數(shù)):返回新的綁定函數(shù)。

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)

創(chuàng)建一個(gè)函數(shù),該函數(shù)調(diào)用前面的方法,object[key]并在其partials前面接收參數(shù)。

此方法不同于_.bind允許綁定函數(shù)引用可能被重新定義或尚不存在的方法。

_.bindKey.placeholder值默認(rèn)為_單體版本,可用作部分應(yīng)用參數(shù)的占位符。

初始

0.10.0

參數(shù)
  1. object (Object):調(diào)用該方法的對(duì)象。

  2. key (字符串):方法的關(guān)鍵。

  3. [partials] (... *):部分應(yīng)用的參數(shù)。

返回

(函數(shù)):返回新的綁定函數(shù)。

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)

創(chuàng)建一個(gè)函數(shù),該函數(shù)接受func的參數(shù),并調(diào)用func返回其結(jié)果,如果至少提供了arity參數(shù)數(shù)量,或者返回接受剩余func參數(shù)的函數(shù),依此類推。 如果func.length不夠,func的arity可能被指定。

_.curry.placeholder值,默認(rèn)為單個(gè)構(gòu)建中的_,可用作所提供參數(shù)的占位符。

注意:此方法不會(huì)設(shè)置curried函數(shù)的“l(fā)ength”屬性。

初始

2.0.0

參數(shù)
  1. func (功能):當(dāng)前的功能。

  2. [arity=func.length] (數(shù)字)func的元數(shù)

返回

(功能):返回新的當(dāng)前功能。

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)

此方法與_.curry類似,只是參數(shù)以_.partialRight而不是_.partial的方式應(yīng)用于func。

_.curryRight.placeholder值默認(rèn)為單個(gè)構(gòu)建中的_,可用作所提供參數(shù)的占位符。

注意:此方法不會(huì)設(shè)置curried函數(shù)的“l(fā)ength”屬性。

初始

3.0.0

參數(shù)
  1. func (功能):當(dāng)前的功能。

  2. [arity=func.length] (數(shù)字)func的元數(shù)

返回

(功能):返回新的當(dāng)前功能。

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={})

創(chuàng)建一個(gè)去抖動(dòng)函數(shù),該函數(shù)會(huì)延遲調(diào)用func,直到自上次調(diào)用去抖函數(shù)后等待幾毫秒后。 去抖動(dòng)函數(shù)帶有一個(gè)取消方法來取消延遲的func調(diào)用和一個(gè)flush方法來立即調(diào)用它們。 提供選項(xiàng)以指示是否應(yīng)在等待超時(shí)的前沿和/或后沿調(diào)用func。 func被提供給去抖動(dòng)函數(shù)的最后一個(gè)參數(shù)調(diào)用。 隨后調(diào)用debounced函數(shù)返回最后一次func調(diào)用的結(jié)果。

注意:如果前導(dǎo)和尾隨選項(xiàng)為true,則只有在等待超時(shí)期間多次調(diào)用debounced函數(shù)時(shí),才會(huì)在超時(shí)的后沿調(diào)用func。

如果wait為0且leading為false,則func調(diào)用被推遲到下一個(gè)tick,類似于超時(shí)值為0的setTimeout。

初始

0.1.0

參數(shù)
  1. func (功能):去抖功能。

  2. [wait=0] (數(shù)字):延遲的毫秒數(shù)。

  3. [options={}] (對(duì)象):選項(xiàng)對(duì)象。

  4. [options.leading=false] (boolean):指定在超時(shí)的前沿調(diào)用。

  5. [options.maxWait] (數(shù)字):最大時(shí)間func可以在被調(diào)用之前被延遲。

  6. [options.trailing=true] (布爾值):指定在超時(shí)的后沿調(diào)用。

返回

(功能):返回新的去抖功能。

// 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)

延遲調(diào)用func,直到當(dāng)前調(diào)用堆棧已被清除。 任何其他參數(shù)在調(diào)用時(shí)都會(huì)提供給func。

初始

0.1.0

參數(shù)
  1. func (功能):延遲的功能。

  2. [args] (... *):用來調(diào)用的參數(shù)func。

返回

(數(shù)字):返回定時(shí)器ID。

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

_.delay(func, wait, args)

等待毫秒后調(diào)用func。 任何其他參數(shù)在調(diào)用時(shí)都會(huì)提供給func。

初始

0.1.0

參數(shù)
  1. func (功能):延遲的功能。

  2. wait (數(shù)字):延遲調(diào)用的毫秒數(shù)。

  3. [args] (... *):用來調(diào)用的參數(shù)func。

返回

(數(shù)字):返回定時(shí)器ID。

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

_.flip(func)

創(chuàng)建一個(gè)調(diào)用func顛倒參數(shù)的函數(shù)。

初始

4.0.0

參數(shù)
  1. func (功能):用于翻轉(zhuǎn)參數(shù)的功能。

返回

(功能):返回新的翻轉(zhuǎn)功能。

var flipped = _.flip(function() {  return _.toArray(arguments);}); 
flipped('a', 'b', 'c', 'd');
// => ['d', 'c', 'b', 'a']

_.memoize(func, resolver)

創(chuàng)建一個(gè)函數(shù)來記憶func的結(jié)果。 如果提供了解析器,它將根據(jù)提供給memoized函數(shù)的參數(shù)確定用于存儲(chǔ)結(jié)果的緩存鍵。 默認(rèn)情況下,提供給memoized函數(shù)的第一個(gè)參數(shù)用作映射緩存鍵。 func被這個(gè)memoized函數(shù)的綁定調(diào)用。

注:緩存作為memoized函數(shù)的緩存屬性公開。 它的創(chuàng)建可以通過將_.memoize.Cache構(gòu)造函數(shù)替換為其實(shí)例實(shí)現(xiàn)Map方法接口clear,delete,get,has和set的構(gòu)造函數(shù)來定制。

初始

0.1.0

參數(shù)
  1. func (功能):輸出記憶功能。

  2. [resolver] (功能):解析緩存鍵的功能。

返回

(功能):返回新的記憶功能。

var object = { 'a': 1, 'b': 2 };
var other = { 'c': 3, 'd': 4 }; 
var values = _.memoize(_.values);
values(object);
// => [1, 2] values(other);
// => [3, 4]
 object.a = 2;
 values(object);
 // => [1, 2] 
 // Modify the result cache.
 values.cache.set(object, ['a', 'b']);
 values(object);
 // => ['a', 'b'] 
 // Replace `_.memoize.Cache`._.memoize.Cache = WeakMap;

_.negate(predicate)

創(chuàng)建一個(gè)否定謂詞func結(jié)果的函數(shù)。 func謂詞用所創(chuàng)建函數(shù)的綁定和參數(shù)調(diào)用。

初始

3.0.0

參數(shù)
  1. predicate (函數(shù)):否定的謂詞。

返回

(函數(shù)):返回新的否定函數(shù)。

function isEven(n) {  return n % 2 == 0;}
 _.filter([1, 2, 3, 4, 5, 6], 
 _.negate(isEven));
 // => [1, 3, 5]

_.once(func)

創(chuàng)建一次只能調(diào)用func的函數(shù)。 重復(fù)調(diào)用函數(shù)返回第一個(gè)調(diào)用的值。 函數(shù)被創(chuàng)建函數(shù)的這個(gè)綁定和參數(shù)調(diào)用。

初始

0.1.0

參數(shù)
  1. func (功能):限制功能。

返回

(功能):返回新的限制功能。

var initialize = _.once(createApplication);
initialize();initialize();
// => `createApplication` is invoked once

_.overArgs(func, [transforms=_.identity])

創(chuàng)建一個(gè)調(diào)用func其參數(shù)轉(zhuǎn)換的函數(shù)。

初始

4.0.0

參數(shù)
  1. func (功能):包裝的功能。

  2. [transforms=[_.identity]] (...(函數(shù)|函數(shù)[])):參數(shù)轉(zhuǎn)換。

返回

(功能):返回新功能。

function doubled(n) {  return n * 2;} function square(n) {  return n * n;} 
var func = _.overArgs(function(x, y) {  return [x, y];}, [square, doubled]); func(9, 3);
// => [81, 6] func(10, 5);
// => [100, 10]

_.partial(func, partials)

創(chuàng)建一個(gè)調(diào)用func的函數(shù),該函數(shù)帶有前綴給它接收到的參數(shù)的部分。 這個(gè)方法就像_.bind,只是它不會(huì)改變這個(gè)綁定。

_.partial.placeholder值(在單體構(gòu)建中默認(rèn)為_)可以用作部分應(yīng)用參數(shù)的占位符。

注意:此方法不會(huì)設(shè)置部分應(yīng)用函數(shù)的“l(fā)ength”屬性。

初始

0.2.0

參數(shù)
  1. func (功能):部分應(yīng)用參數(shù)的功能。

  2. [partials] (... *):部分應(yīng)用的參數(shù)。

返回

(功能):返回新的部分應(yīng)用功能。

function greet(greeting, name) {  return greeting + ' ' + name;} 
var sayHelloTo = _.partial(greet, 'hello');
sayHelloTo('fred');
// => 'hello fred' 
// Partially applied with placeholders.
var greetFred = _.partial(greet, _, 'fred');
greetFred('hi');
// => 'hi fred'

_.partialRight(func, partials)

此方法與_.partial類似,但部分應(yīng)用的參數(shù)會(huì)附加到它所接收的參數(shù)中。

_.partialRight.placeholder值(默認(rèn)為單個(gè)構(gòu)建中的_)可用作部分應(yīng)用參數(shù)的占位符。

注意:此方法不會(huì)設(shè)置部分應(yīng)用函數(shù)的“l(fā)ength”屬性。

初始

1.0.0

參數(shù)
  1. func (功能):部分應(yīng)用參數(shù)的功能。

  2. [partials] (... *):部分應(yīng)用的參數(shù)。

返回

(功能):返回新的部分應(yīng)用功能。

function greet(greeting, name) {  return greeting + ' ' + name;} 
var greetFred = _.partialRight(greet, 'fred');
greetFred('hi');
// => 'hi fred' 
// Partially applied with placeholders.
var sayHelloTo = _.partialRight(greet, 'hello', _);
sayHelloTo('fred');
// => 'hello fred'

_.rearg(func, indexes)

創(chuàng)建一個(gè)調(diào)用func的函數(shù),其參數(shù)按照指定的索引進(jìn)行排列,其中第一個(gè)索引的參數(shù)值作為第一個(gè)參數(shù),第二個(gè)索引的參數(shù)值作為第二個(gè)參數(shù)提供,依此類推。

初始

3.0.0

參數(shù)
  1. func (函數(shù)):重新排列參數(shù)的函數(shù)。

  2. indexes (...(number | number [])):排列的參數(shù)索引。

返回

(功能):返回新功能。

var rearged = _.rearg(function(a, b, c) {  return [a, b, c];}, [2, 0, 1]); 
rearged('b', 'c', 'a')// => ['a', 'b', 'c']

_.rest(func, start=func.length-1)

創(chuàng)建一個(gè)調(diào)用func的函數(shù),該函數(shù)使用創(chuàng)建函數(shù)的此綁定以及作為數(shù)組提供的從start和之后的參數(shù)。

注意:此方法基于其余參數(shù)。

初始

4.0.0

參數(shù)
  1. func (功能):將休息參數(shù)應(yīng)用于的功能。

  2. [start=func.length-1] (數(shù)字):其余參數(shù)的起始位置。

返回

(功能):返回新功能。

var say = _.rest(function(what, names) {  return what + ' ' + _.initial(names).join(', ') + (_.size(names) > 1 ? ', & ' : '') + _.last(names);}); 
say('hello', 'fred', 'barney', 'pebbles');
// => 'hello fred, barney, & pebbles'

_.spread(func, start=0)

創(chuàng)建一個(gè)調(diào)用create function和一個(gè)參數(shù)數(shù)組functhis綁定的函數(shù)Function#apply。

注意:此方法基于擴(kuò)展運(yùn)算符。

初始

3.2.0

參數(shù)
  1. func (功能):將參數(shù)傳播的功能。

  2. [start=0] (數(shù)字):價(jià)差的起始位置。

返回

(功能):返回新功能。

var say = _.spread(function(who, what) {  return who + ' says ' + what;}); 
say(['fred', 'hello']);
// => 'fred says hello' 
var numbers = Promise.all([
  Promise.resolve(40),

  Promise.resolve(36)]);
 numbers.then(_.spread(function(x, y) {  return x + y;}));
 // => a Promise of 76

_.throttle(func, wait=0, options={})

創(chuàng)建一個(gè)throttled函數(shù),每等待毫秒最多只調(diào)用一次func。 被扼殺的函數(shù)帶有一個(gè)取消方法來取消延遲的func調(diào)用和一個(gè)flush方法來立即調(diào)用它們。 提供選項(xiàng)以指示是否應(yīng)在等待超時(shí)的前沿和/或后沿調(diào)用func。 func被提供給限制函數(shù)的最后一個(gè)參數(shù)調(diào)用。 隨后調(diào)用throttled函數(shù)會(huì)返回最后一次func調(diào)用的結(jié)果。

注意:如果前導(dǎo)和尾隨選項(xiàng)為true,則只有在等待超時(shí)期間調(diào)用被阻止的函數(shù)多次時(shí),才會(huì)在超時(shí)的后沿調(diào)用func。

如果wait為0且leading為false,則func調(diào)用被推遲到下一個(gè)tick,類似于超時(shí)值為0的setTimeout。

初始

0.1.0

參數(shù)
  1. func (功能):節(jié)流的功能。

  2. [wait=0] (數(shù)字):將調(diào)用限制為的毫秒數(shù)。

  3. [options={}] (對(duì)象):選項(xiàng)對(duì)象。

  4. [options.leading=true] (boolean):指定在超時(shí)的前沿調(diào)用。

  5. [options.trailing=true] (布爾值):指定在超時(shí)的后沿調(diào)用。

返回

(功能):返回新的限制功能。

// Avoid excessively updating the position while scrolling.
jQuery(window).on('scroll', _.throttle(updatePosition, 100)); 
// Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.
var throttled = _.throttle(renewToken, 300000, { 'trailing': false });
jQuery(element).on('click', throttled); 
// Cancel the trailing throttled invocation.
jQuery(window).on('popstate', throttled.cancel);

_.unary(func)

創(chuàng)建一個(gè)最多接受一個(gè)參數(shù)的函數(shù),忽略任何其他參數(shù)。

初始

4.0.0

參數(shù)
  1. func (函數(shù)):為參數(shù)加上參數(shù)的函數(shù)。

返回

(功能):返回新的上限功能。

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

_.wrap(value, wrapper=identity)

創(chuàng)建一個(gè)為封裝器提供值作為其第一個(gè)參數(shù)的函數(shù)。 提供給函數(shù)的任何附加參數(shù)都會(huì)附加到提供給包裝器的參數(shù)中。 包裝被調(diào)用與創(chuàng)建的函數(shù)的此綁定。

初始

0.1.0

參數(shù)
  1. value (*):要包裝的值。

  2. [wrapper=identity] (功能):包裝功能。

返回

(功能):返回新功能。

var p = _.wrap(_.escape, function(func, text) {  return '<p>' + func(text) + '</p>';}); 
p('fred, barney, & pebbles');
// => '<p>fred, barney, &amp; pebbles</p>'
Previous article: Next article: