判斷乙個值是不是為空
function
isundef
(v)
判斷乙個值是不是不為空
function
isdef
(v)
判斷乙個值真
function
istrue
(v)
判斷乙個值假
function
isfalse
(v)
判斷乙個值是不是原始值
function isprimitive (value)
快速型別檢查,當我們知道value是json相容型別時,用於判斷原始值和物件
function
isobject
(obj)
嚴格型別,只有value為js物件時才返回true
var _tostring = object.prototype.tostring;
function
isplainobject
(obj)
返回的函式使用了內部的陣列map,是乙個典型的閉包的應用
function
makemap
(str,expectslowercase)
return expectslowercase //判斷乙個變數是否包含在傳入字串裡
? function
(val)
: function
(val)
}
刪除陣列的乙個元素
function remove (arr, item)
}}
判斷物件的自有屬性
var hasownproperty = object.prototype.hasownproperty;
function
hasown
(obj, key)
建立乙個快取函式
function
cached
(fn) )
}
首字母大寫
var capitalize=cached(function(str))
console.log(capitalize('abc'))
連線乙個camelcase字串
var hyphenatere=/([^-])([a-z])/g
var hyphenate = cached(function
(str))
console.log(hyphenate('abcd'))
判斷乙個字串是否以$或者_開頭
function
isreserved
(str)
定義乙個屬性
function
def(obj, key, val, enumerable))
}
《原始碼閱讀》原始碼閱讀技巧,原始碼閱讀工具
檢視某個類的完整繼承關係 選中類的名稱,然後按f4 quick type hierarchy quick type hierarchy可以顯示出類的繼承結構,包括它的父類和子類 supertype hierarchy supertype hierarchy可以顯示出類的繼承和實現結構,包括它的父類和...
vue原始碼閱讀(一)
之前想要研究下vue的原始碼 網上一般直接就上來甩出雙向繫結等等的函式 這次看原始碼 想從乙個漸進式的方向來解讀。當前版本基本上是最新的版本,18年6月的最新版,版本號是2.5.17 當我們接觸乙個專案或者乙個框架 在沒有交接文件的情況下 首先第一印象是啥?肯定是目錄 通過查資料和看 基本確定了這些...
vue原始碼閱讀(二)
那麼下邊這個則是例項化建構函式,也就是開始使用了,不管是作為框架,還是作為外掛程式,都需要new一下。翻篇回去,先看vue的建構函式,this.init options 是呼叫的第乙個方法,包括傳進來的引數options,不過在這之前,還判斷了下呼叫vue的是不是先new出來的。根據注入的檔案 找到...