.identity
此方法只返回第一个参数。
var res1 = _.identity(10, 20);
// res1 now is 10
var res2 = _.identity("hello", "world");
// res2 now is "hello"
_.identity 在 lodash 文档中的含义是什么?
在整个 lodash 文档中使用此方法而不是 function(x){return x;}
(或 ES6 等效 x => x
)。
它通常意味着无转变或用作谓词:价值的真实性。
实施例 _.identity 中的文档 _.times
_.times
函数有两个参数。它在文档中表达如下: var res = _.times(n,[iteratee = _ .identity])
该 iteratee 作为他们遍历变换的值。
文档显示 iteratee 参数是可选的,如果省略它将具有默认值 _.identity
,在这种情况下意味着无转换****
var res = _.times(5); // returns [0, 1, 2, 3, 4]
// means the same as:
var res = _.times(5, _.identity);
// which again does the same as:
var res = _.times(5, function(x){ return x; });
// or with the ES6 arrow syntax:
var res = _.times(5, x => x);
实施例 _.identity 中的文档 _.findKey 和 _.findLastKey
_.findKey
和 _.findLastKey
函数有两个参数。它在文档中表达如下: _. findKey(object,[predicate = _。identity ]) 和 _.findLastKey(object,[predicate = _ .identity])
这再次意味着第二个参数是可选的,如果省略它将具有默认值 _.identity
,在这种情况下意味着任何真正的任何东西的第一个(或最后一个)
var p = {
name: "Peter Pan",
age: "Not yet a grownup",
location: "Neverland"
};
var res1 = _.findKey(p); // returns "name"
var res2 = _.findLastKey(p); // returns "location"
// means the same as:
var res1 = _.findKey(p, _.identity);
var res2 = _.findLastKey(p, _.identity);
// which again means the same as:
var res1 = _.findKey(p, function(x) { return x; }
var res2 = _.findLastKey(p, function(x) { return x; }
// or with ES6 arrow syntax:
var res1 = _.findKey(p, x => x);
var res2 = _.findKey(p, x => x);