.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);