1、 檔案位置
lodash\dist\lodash.js
2、
;(function() .call(this))
這個函式的call方法的含義:誰呼叫它,this就指向當前的環境
call()方法在使用乙個指定的this值和若干個指定的引數值的前提下呼叫某個函式或方法。
fun.call( thisarg[, arg1[, arg2[, ...]]])
thisarg在函式執行時指定的this值。指定的this值並不一定是該函式執行時真正的this值,如果這個函式處於非嚴格模式下,則指定為ull何undefined的this值會自動指向全域性函式(瀏覽器中就是window物件)。同時值為原始值(數字、字串、布林值)的this會指向該原始值的自動包裝物件。
3、
line:400
/* * detect free variable `global` from node.js.
* 從nodejs中發現自由變數global,就使用nodejs的global
*/var freeglobal = typeof global == 'object' && global && global.object === object && global;
/* * detect free variable `self`.
* 發現自由變數self,代表當前作用域
*/var freeself = typeof self == 'object' && self && self.object === object && self;
/** used as a reference to the global object. */
var root = freeglobal || freeself || function('return this')();
關於function('return this')();的用法
4、 lodash和「_」如何被劃等號
line:1405
function runincontext(context) {}
line:16705
// export lodash.
var _ = runincontext();
// some amd build optimizers, like r.js, check for condition patterns like:
if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) );
} // check for `exports` after `define` in case a build optimizer adds it.
else if (freemodule)
else
5、這裡如何將lodash imports _ 有何含義?
lodash.templatesettings=
};可以用如下方法呼叫interpolate
[options.interpolate=_.templatesettings.interpolate]
原型繼承
lodash.prototype = baselodash.prototype;
lodash.prototype.constructor = lodash;
Lodash原始碼精讀 chunk slice
today 2021.3.12 lodash 原始碼 將陣列 array 拆分成多個 size 長度的區塊,並將這些區塊組成乙個新陣列。如果array 無法被分割成全部等長的區塊,那麼最後剩餘的元素將組成乙個區塊。function chunk array,size 1 let index 0let ...
lodash原始碼分析之Number
一 lodash版本 4.17.5 二 函式 1 clamp 1 定義 clamp number,lower upper 2 作用 返回加緊的數字。3 例子。const require lodash console.log clamp 10,1,20 輸出 10 console.log clamp ...
lodash原始碼分析之isArguments
有人命中註定要過平庸的生活,默默無聞,因為他們經歷了痛苦或不幸 有人卻故意這樣做,那是因為他們得到的幸福超過了他們的承受能力。卡爾維諾 煙雲 本文為讀 lodash 原始碼的第二十一篇,後續文章會更新到這個倉庫中,歡迎 star pocket lodash import gettag from in...