最贊回答 / 慕尼黑3821393
我是這樣理解的,比如說你第一次使用aquery('#first-div'),因為if判斷不是aquery就使用new實例化一個對象,當你第二次調用aquery('#first-div')時,為了減少內存資源以及cpu的浪費,這里就不再實例化了,即不再創建新的對象了。
2015-10-08
已采納回答 / qq_最初的夢想_6
javascript不存在相等的兩個對象,比如[]===[],{}==={}均為false,而函數的比較最為復雜,樓主寫的兩個自執行函數均無返回值,瀏覽器便取默認值(不是undefined就是null了,實際上undefined==null)去比較,自然相等;
2015-09-25
最新回答 / qq_一直很安靜_8
(function(){}())是立即執行里面的函數,具有隔絕外界變量的功能,避免變量污染,function(){}()是一個匿名函數,因為匿名函數不能被調用,就會報錯
2015-09-25
最新回答 / xhuanhero
可以通過函數對象的call、apply方法借用數組的slice、splice方法將類數組對象轉換為數組例如在函數內部 Array.prototype.slice.call(arguments) 就可以把 arguments 對象轉換成數組,然后就可以調用數組的所有方法了以上純屬猜測,但是源碼是怎么寫的還真不知道
2015-09-19
最新回答 / qq_一直很安靜_8
因為函數里才會有局部作用域,全局屬性undefined表示原始值undefined。它是一個JavaScript的?原始數據類型?,在非全局作用域中undefined被當作標識符(變量名)來使用(因為undefined不是一個保留字),第一種alert(undefined)中的undefined只是原始值undefined,而不是變量undefined
2015-09-14
最贊回答 / qq_秋風戲雨_0
不知道這老師為什么要扯undefined。。。 本來很簡單的自運行匿名函數,非要扯那么麻煩讓其它人看不懂,不就是一個自運行函數,(function(a,b){b(a)})(window,jQuery函數體).把Juery函數定義寫在了自運行的傳參數位置而已,代碼相當于是讀取完后自運行了function(window,jquery){jQuery(window)}這個函數,傳入的window多了一個判斷
2015-08-28