相信大家都用過jquery庫編寫過js**,不過我就比較好奇jq的本身是什麼,是如何用乙個$就能實現一系列的操作的。然後我仔細的閱讀了jq原始碼,還是有所收穫的,並發現了一些她的寫法,接下來我把我自己仿照jq編寫的檔案給展示出來,有興趣的同學可以跟著做做
直接上**加解釋吧
//使用閉包,
//匿名函式自執行避免變數全域性汙染
(function()
jquery.prototype.version = "2.0";
jquery.prototype.init = function(selector)else if(str === "object")else)()
這樣下來jquery的基本功能就全實現了,使用的話就和jq一樣,script引入就行,我們來看一下效果
閉包和原型鏈
閉包 簡單的理解就是 閉包就是能夠讀取其他函式內部變數的函式,它兩個最大的用處 可以讀取函式內部的變數,讓變數的值始終保持在記憶體中。閉包與它的詞法環境綁在一起,因此閉包讓我們能夠從乙個函式內部訪問其外部函式的作用域 閉包特點 函式a巢狀函式b 函式b能訪問函式a的變數 最後返回函式b 函式b就是閉...
閉包的運用
function person name return var littleming person fool littleming.getname 在我理解,getname getname仍返回函式getname,只不過將其當作person的物件的乙個屬性,等同於下面這個函式 function pe...
python閉包的運用
閉包就是內層函式,對外層函式 非全域性 的變數的引 叫閉包 def func1 name alex def func2 print name 閉包func2 func1 結果 alex 我們可以使 closure 來檢測函式是否是閉包.使 函式名.closure 返回cell就是 閉包.返回none...