mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-02-11 03:17:49 +00:00
Add placeholder docs. [ci skip]
This commit is contained in:
124
lodash.js
124
lodash.js
@@ -6312,8 +6312,11 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a function that invokes `func` with the `this` binding of `thisArg`
|
* Creates a function that invokes `func` with the `this` binding of `thisArg`
|
||||||
* and prepends any additional `bind` arguments to those provided to the bound
|
* and prepends any additional `_.bind` arguments to those provided to the
|
||||||
* function.
|
* bound function.
|
||||||
|
*
|
||||||
|
* The `_.bind.placeholder` value, which defaults to `_` in monolithic builds,
|
||||||
|
* may be used as a placeholder for partially applied arguments.
|
||||||
*
|
*
|
||||||
* **Note:** Unlike native `Function#bind` this method does not set the `length`
|
* **Note:** Unlike native `Function#bind` this method does not set the `length`
|
||||||
* property of bound functions.
|
* property of bound functions.
|
||||||
@@ -6327,13 +6330,20 @@
|
|||||||
* @returns {Function} Returns the new bound function.
|
* @returns {Function} Returns the new bound function.
|
||||||
* @example
|
* @example
|
||||||
*
|
*
|
||||||
* var func = function(greeting) {
|
* var greet = function(greeting, punctuation) {
|
||||||
* return greeting + ' ' + this.user;
|
* return greeting + ' ' + this.user + punctuation;
|
||||||
* };
|
* };
|
||||||
*
|
*
|
||||||
* func = _.bind(func, { 'user': 'fred' }, 'hi');
|
* var object = { 'user': 'fred' };
|
||||||
* func();
|
*
|
||||||
* // => 'hi fred'
|
* var bound = _.bind(greet, object, 'hi');
|
||||||
|
* bound('!');
|
||||||
|
* // => 'hi fred!'
|
||||||
|
*
|
||||||
|
* // using placeholders
|
||||||
|
* var bound = _.bind(greet, object, _, '!');
|
||||||
|
* bound('hi');
|
||||||
|
* // => 'hi fred!'
|
||||||
*/
|
*/
|
||||||
function bind(func, thisArg) {
|
function bind(func, thisArg) {
|
||||||
var bitmask = BIND_FLAG;
|
var bitmask = BIND_FLAG;
|
||||||
@@ -6382,12 +6392,16 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a function that invokes the method at `object[key]` and prepends
|
* Creates a function that invokes the method at `object[key]` and prepends
|
||||||
* any additional `bindKey` arguments to those provided to the bound function.
|
* any additional `_.bindKey` arguments to those provided to the bound function.
|
||||||
|
*
|
||||||
* This method differs from `_.bind` by allowing bound functions to reference
|
* This method differs from `_.bind` by allowing bound functions to reference
|
||||||
* methods that may be redefined or don't yet exist.
|
* methods that may be redefined or don't yet exist.
|
||||||
* See [Peter Michaux's article](http://michaux.ca/articles/lazy-function-definition-pattern)
|
* See [Peter Michaux's article](http://michaux.ca/articles/lazy-function-definition-pattern)
|
||||||
* for more details.
|
* for more details.
|
||||||
*
|
*
|
||||||
|
* The `_.bindKey.placeholder` value, which defaults to `_` in monolithic
|
||||||
|
* builds, may be used as a placeholder for partially applied arguments.
|
||||||
|
*
|
||||||
* @static
|
* @static
|
||||||
* @memberOf _
|
* @memberOf _
|
||||||
* @category Function
|
* @category Function
|
||||||
@@ -6399,20 +6413,25 @@
|
|||||||
*
|
*
|
||||||
* var object = {
|
* var object = {
|
||||||
* 'user': 'fred',
|
* 'user': 'fred',
|
||||||
* 'greet': function(greeting) {
|
* 'greet': function(greeting, punctuation) {
|
||||||
* return greeting + ' ' + this.user;
|
* return greeting + ' ' + this.user + punctuation;
|
||||||
* }
|
* }
|
||||||
* };
|
* };
|
||||||
*
|
*
|
||||||
* var func = _.bindKey(object, 'greet', 'hi');
|
* var bound = _.bindKey(object, 'greet', 'hi');
|
||||||
* func();
|
* bound('!');
|
||||||
* // => 'hi fred'
|
* // => 'hi fred!'
|
||||||
*
|
*
|
||||||
* object.greet = function(greeting) {
|
* object.greet = function(greeting, punctuation) {
|
||||||
* return greeting + 'ya ' + this.user + '!';
|
* return greeting + 'ya ' + this.user + punctuation;
|
||||||
* };
|
* };
|
||||||
*
|
*
|
||||||
* func();
|
* bound('!');
|
||||||
|
* // => 'hiya fred!'
|
||||||
|
*
|
||||||
|
* // using placeholders
|
||||||
|
* var bound = _.bindKey(object, 'greet', _, '!');
|
||||||
|
* bound('hi');
|
||||||
* // => 'hiya fred!'
|
* // => 'hiya fred!'
|
||||||
*/
|
*/
|
||||||
function bindKey(object, key) {
|
function bindKey(object, key) {
|
||||||
@@ -6433,6 +6452,9 @@
|
|||||||
* remaining `func` arguments, and so on. The arity of `func` can be specified
|
* remaining `func` arguments, and so on. The arity of `func` can be specified
|
||||||
* if `func.length` is not sufficient.
|
* if `func.length` is not sufficient.
|
||||||
*
|
*
|
||||||
|
* The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,
|
||||||
|
* may be used as a placeholder for provided arguments.
|
||||||
|
*
|
||||||
* **Note:** This method does not set the `length` property of curried functions.
|
* **Note:** This method does not set the `length` property of curried functions.
|
||||||
*
|
*
|
||||||
* @static
|
* @static
|
||||||
@@ -6444,9 +6466,11 @@
|
|||||||
* @returns {Function} Returns the new curried function.
|
* @returns {Function} Returns the new curried function.
|
||||||
* @example
|
* @example
|
||||||
*
|
*
|
||||||
* var curried = _.curry(function(a, b, c) {
|
* var abc = function(a, b, c) {
|
||||||
* return [a, b, c];
|
* return [a, b, c];
|
||||||
* });
|
* };
|
||||||
|
*
|
||||||
|
* var curried = _.curry(abc);
|
||||||
*
|
*
|
||||||
* curried(1)(2)(3);
|
* curried(1)(2)(3);
|
||||||
* // => [1, 2, 3]
|
* // => [1, 2, 3]
|
||||||
@@ -6456,6 +6480,10 @@
|
|||||||
*
|
*
|
||||||
* curried(1, 2, 3);
|
* curried(1, 2, 3);
|
||||||
* // => [1, 2, 3]
|
* // => [1, 2, 3]
|
||||||
|
*
|
||||||
|
* // using placeholders
|
||||||
|
* curried(1)(_, 3)(2);
|
||||||
|
* // => [1, 2, 3]
|
||||||
*/
|
*/
|
||||||
function curry(func, arity, guard) {
|
function curry(func, arity, guard) {
|
||||||
if (guard && isIterateeCall(func, arity, guard)) {
|
if (guard && isIterateeCall(func, arity, guard)) {
|
||||||
@@ -6470,6 +6498,9 @@
|
|||||||
* This method is like `_.curry` except that arguments are applied to `func`
|
* This method is like `_.curry` except that arguments are applied to `func`
|
||||||
* in the manner of `_.partialRight` instead of `_.partial`.
|
* in the manner of `_.partialRight` instead of `_.partial`.
|
||||||
*
|
*
|
||||||
|
* The `_.curryRight.placeholder` value, which defaults to `_` in monolithic
|
||||||
|
* builds, may be used as a placeholder for provided arguments.
|
||||||
|
*
|
||||||
* **Note:** This method does not set the `length` property of curried functions.
|
* **Note:** This method does not set the `length` property of curried functions.
|
||||||
*
|
*
|
||||||
* @static
|
* @static
|
||||||
@@ -6481,9 +6512,11 @@
|
|||||||
* @returns {Function} Returns the new curried function.
|
* @returns {Function} Returns the new curried function.
|
||||||
* @example
|
* @example
|
||||||
*
|
*
|
||||||
* var curried = _.curryRight(function(a, b, c) {
|
* var abc = function(a, b, c) {
|
||||||
* return [a, b, c];
|
* return [a, b, c];
|
||||||
* });
|
* };
|
||||||
|
*
|
||||||
|
* var curried = _.curryRight(abc);
|
||||||
*
|
*
|
||||||
* curried(3)(2)(1);
|
* curried(3)(2)(1);
|
||||||
* // => [1, 2, 3]
|
* // => [1, 2, 3]
|
||||||
@@ -6493,6 +6526,10 @@
|
|||||||
*
|
*
|
||||||
* curried(1, 2, 3);
|
* curried(1, 2, 3);
|
||||||
* // => [1, 2, 3]
|
* // => [1, 2, 3]
|
||||||
|
*
|
||||||
|
* // using placeholders
|
||||||
|
* curried(3)(1, _)(2);
|
||||||
|
* // => [1, 2, 3]
|
||||||
*/
|
*/
|
||||||
function curryRight(func, arity, guard) {
|
function curryRight(func, arity, guard) {
|
||||||
if (guard && isIterateeCall(func, arity, guard)) {
|
if (guard && isIterateeCall(func, arity, guard)) {
|
||||||
@@ -6930,6 +6967,9 @@
|
|||||||
* to those provided to the new function. This method is like `_.bind` except
|
* to those provided to the new function. This method is like `_.bind` except
|
||||||
* it does **not** alter the `this` binding.
|
* it does **not** alter the `this` binding.
|
||||||
*
|
*
|
||||||
|
* The `_.partial.placeholder` value, which defaults to `_` in monolithic
|
||||||
|
* builds, may be used as a placeholder for partially applied arguments.
|
||||||
|
*
|
||||||
* **Note:** This method does not set the `length` property of partially
|
* **Note:** This method does not set the `length` property of partially
|
||||||
* applied functions.
|
* applied functions.
|
||||||
*
|
*
|
||||||
@@ -6941,10 +6981,18 @@
|
|||||||
* @returns {Function} Returns the new partially applied function.
|
* @returns {Function} Returns the new partially applied function.
|
||||||
* @example
|
* @example
|
||||||
*
|
*
|
||||||
* var greet = function(greeting, name) { return greeting + ' ' + name; };
|
* var greet = function(greeting, name) {
|
||||||
|
* return greeting + ' ' + name;
|
||||||
|
* };
|
||||||
|
*
|
||||||
* var sayHelloTo = _.partial(greet, 'hello');
|
* var sayHelloTo = _.partial(greet, 'hello');
|
||||||
* sayHelloTo('fred');
|
* sayHelloTo('fred');
|
||||||
* // => 'hello fred'
|
* // => 'hello fred'
|
||||||
|
*
|
||||||
|
* // using placeholders
|
||||||
|
* var greetFred = _.partial(greet, _, 'fred');
|
||||||
|
* greetFred('hi');
|
||||||
|
* // => 'hi fred'
|
||||||
*/
|
*/
|
||||||
function partial(func) {
|
function partial(func) {
|
||||||
var partials = slice(arguments, 1),
|
var partials = slice(arguments, 1),
|
||||||
@@ -6957,6 +7005,9 @@
|
|||||||
* This method is like `_.partial` except that partially applied arguments
|
* This method is like `_.partial` except that partially applied arguments
|
||||||
* are appended to those provided to the new function.
|
* are appended to those provided to the new function.
|
||||||
*
|
*
|
||||||
|
* The `_.partialRight.placeholder` value, which defaults to `_` in monolithic
|
||||||
|
* builds, may be used as a placeholder for partially applied arguments.
|
||||||
|
*
|
||||||
* **Note:** This method does not set the `length` property of partially
|
* **Note:** This method does not set the `length` property of partially
|
||||||
* applied functions.
|
* applied functions.
|
||||||
*
|
*
|
||||||
@@ -6968,21 +7019,18 @@
|
|||||||
* @returns {Function} Returns the new partially applied function.
|
* @returns {Function} Returns the new partially applied function.
|
||||||
* @example
|
* @example
|
||||||
*
|
*
|
||||||
* var greet = function(greeting, name) { return greeting + ' ' + name; };
|
* var greet = function(greeting, name) {
|
||||||
|
* return greeting + ' ' + name;
|
||||||
|
* };
|
||||||
|
*
|
||||||
* var greetFred = _.partialRight(greet, 'fred');
|
* var greetFred = _.partialRight(greet, 'fred');
|
||||||
* greetFred('hello');
|
* greetFred('hi');
|
||||||
|
* // => 'hi fred'
|
||||||
|
*
|
||||||
|
* // using placeholders
|
||||||
|
* var sayHelloTo = _.partialRight(greet, 'hello', _);
|
||||||
|
* sayHelloTo('fred');
|
||||||
* // => 'hello fred'
|
* // => 'hello fred'
|
||||||
*
|
|
||||||
* // create a deep `_.defaults`
|
|
||||||
* var defaultsDeep = _.partialRight(_.merge, function deep(value, other) {
|
|
||||||
* return _.merge(value, other, deep);
|
|
||||||
* });
|
|
||||||
*
|
|
||||||
* var object = { 'a': { 'b': { 'c': 1 } } },
|
|
||||||
* source = { 'a': { 'b': { 'c': 2, 'd': 2 } } };
|
|
||||||
*
|
|
||||||
* defaultsDeep(object, source);
|
|
||||||
* // => { 'a': { 'b': { 'c': 1, 'd': 2 } } }
|
|
||||||
*/
|
*/
|
||||||
function partialRight(func) {
|
function partialRight(func) {
|
||||||
var partials = slice(arguments, 1),
|
var partials = slice(arguments, 1),
|
||||||
@@ -8919,7 +8967,7 @@
|
|||||||
* in "interpolate" delimiters, HTML-escape interpolated data properties in
|
* in "interpolate" delimiters, HTML-escape interpolated data properties in
|
||||||
* "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data
|
* "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data
|
||||||
* properties may be accessed as free variables in the template. If a setting
|
* properties may be accessed as free variables in the template. If a setting
|
||||||
* object is provided it overrides `_.templateSettings` for the template.
|
* object is provided it takes precedence over `_.templateSettings` values.
|
||||||
*
|
*
|
||||||
* **Note:** In the development build `_.template` utilizes sourceURLs for easier debugging.
|
* **Note:** In the development build `_.template` utilizes sourceURLs for easier debugging.
|
||||||
* See the [HTML5 Rocks article on sourcemaps](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)
|
* See the [HTML5 Rocks article on sourcemaps](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)
|
||||||
@@ -9735,9 +9783,9 @@
|
|||||||
* @returns {Function} Returns the new function.
|
* @returns {Function} Returns the new function.
|
||||||
* @example
|
* @example
|
||||||
*
|
*
|
||||||
* var fred = { 'user': 'fred', 'age': 40, 'active': true };
|
* var object = { 'user': 'fred', 'age': 40, 'active': true };
|
||||||
* _.map(['age', 'active'], _.propertyOf(fred));
|
* _.map(['active', 'user'], _.propertyOf(object));
|
||||||
* // => [40, true]
|
* // => [true, 'fred']
|
||||||
*
|
*
|
||||||
* var object = { 'a': 3, 'b': 1, 'c': 2 };
|
* var object = { 'a': 3, 'b': 1, 'c': 2 };
|
||||||
* _.sortBy(['a', 'b', 'c'], _.propertyOf(object));
|
* _.sortBy(['a', 'b', 'c'], _.propertyOf(object));
|
||||||
|
|||||||
Reference in New Issue
Block a user