日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

从jQuery 入口方式写jQuery工具类库

發布時間:2025/4/5 编程问答 13 豆豆
生活随笔 收集整理的這篇文章主要介紹了 从jQuery 入口方式写jQuery工具类库 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

###1.jQuery 入口方式 在常用的jquery入口方式中估計大部分人都是直接用的是

$(function(){//code }) 復制代碼

下面詳細說一下jquery的幾種入口方式: ####1.1 $ 符號+ready() 的方式 很多人可能會看到一下這種方式入口,是通過ready() 函數調用,至于原理會在下面講解。

$(document).ready(function(){//code }); 復制代碼

####1.2 $ 符號 +簡寫 的方式 這種應該最多人用的,因為寫起來也是最方便的

$(function(){//code }) 復制代碼

####1.3 jQuery +ready() 的方式 這是jquery完整的寫法,也是最初的形態。

jQuery(document).ready(function(){console.log('jQuery ready 入口方式');}) 復制代碼

####1.4 jQuery + 簡寫入口 這種方式也是跟第二種方式類似

jQuery(function(){console.log('I am jquery ');}) 復制代碼

2. 模擬 jQuery 的入口函數

####2.1 認清楚 $ 符號 其實 $ 是 jQuery 的一個代替品,也就是可以解析為什么上面四種入口方法類似的原因。 嘗試:

var $ = 'I am $'; console.log($); 復制代碼

從控制臺打印出來的是

I am $ 復制代碼

再次測試,引入jQuery 后打印 $ 對象和 jQuery 對象

<script src="jquery-1.11.1.min.js"></script> <script>console.log($);console.log(jQuery);console.log($===jQuery) </script> 復制代碼

打印結果如下:

結論:從上面可以得知 $ 和 jQuery 是同一個對象,也可以得知它是一個方法(或者對象),通過傳遞(a,b)兩個參數,返回了一個新的對象,當然,在這里面也會根據你是否已經創建過該對象。


再次測試,看創建兩個jQuery 對象情況會怎么樣, $ 和 jQuery.

var t1 = $;var t2 = jQuery;console.log(t1===t2); 復制代碼

思考另外一種情況:

var t1 =new $; var t2 = new jQuery; console.log(t1===t2); 復制代碼

這樣子的情況請問相等嘛? 答案是 false

解析:

通過new 是開辟了一個新的空間,去存儲這個對象。具體看一下

console.log(t1); console.log(t2); 復制代碼

再看,如果是通過 $ 或 jQuery 直接打印出來的對象可以看得出是 一個方法里面通過傳參數,而通過 new $ 或 new jQuery 的話直接是返回的對象,下面是兩個的對比。

繼續探究:

返回的屬性有個 proto 對象 打印一下:

var t2 = new jQuery; console.log(t2); console.log(t2.__proto__); 復制代碼

繼續推測:

//下面這句會不會是 打印jQuery 的版本號呢? console.log(t2.__proto__.jquery); 復制代碼

下面這句通過

jQuery.fn = jQuery.prototype ={//這里暴露一些屬性接口信息jquery: version,// 這里把上面的版本號version 通過jquery這個接口獲得 }復制代碼

詳情圖:

貌似跑題了。回到最初的問題 ####2.1 寫一個kQuery 庫 回顧js 的調用方式

var kQuery= function (a){//code } kQuery(a); 復制代碼

測試下你的 code 塊是否被執行了。 再次模擬jquery,它是返回一個 對象。 那我們的kQuery 應該也有個對象返回,

var kQuery= function (a){//返回對象return obj; } 復制代碼

上面代碼明顯是錯誤的,因為 它不知道 obj 是個什么東東,所以應該先定義 obj 為一個對象。

var kQuery= function (a){var obj ={}//返回對象return obj; } 復制代碼

再次看 第一大點,jquery的如后函數是不是都是通過ready() 來執行的,那是不是這個對象應該擁有ready 的這個方法。

var kQuery= function (a){var obj ={ready:function(){console.log('This is ready function');}}//返回對象return obj; } 復制代碼

轉載于:https://juejin.im/post/5a3217c8f265da432652da11

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的从jQuery 入口方式写jQuery工具类库的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲图片欧美 | 齐天大性床战铁扇公主 | 9·1·黄·色·视·频 | 97精品人人a片免费看 | 日本人视频69式jzzij | 91无套直看片红桃 | jizz在线观看视频 | 鲁啊鲁在线视频 | 69一区二区| 天堂一区在线 | 黄色免费入口 | 成人在线播放视频 | 免费一区二区三区 | 欧美精品一区在线 | 久久国产香蕉 | 777中文字幕 | 国产aaa| 蜜桃久久av | 国产精品污www在线观看 | 激情小说五月天 | 蜜桃av噜噜一区二区三区网址 | www.色在线| 亚洲一区二区三区在线看 | 亚洲av无码一区二区三区在线 | 国产成人精品视频在线观看 | 在线观看免费高清在线观看 | 69av一区二区三区 | 国产精品1页 | 日韩欧美午夜 | 成人h动漫精品一区 | 精品人妻无码一区二区性色 | 成人免费超碰 | 在线免费黄色 | 中文字幕在线视频免费播放 | 亚洲午夜精品久久 | 久久人人爽人人爽人人片 | 久久久久久国产免费a片 | xxxwww在线观看 | 久久青青草原亚洲av无码麻豆 | 久久99精品国产.久久久久 | 青草青在线视频 | 人妻 校园 激情 另类 | 亚洲三级在线 | 国产精品乱码妇女bbbb | 日日夜夜免费视频 | 夜间福利在线观看 | 无人在线观看高清视频 | 女同av在线播放 | 欧美激情视频在线观看 | 偷偷色噜狠狠狠狠的777米奇 | 最近日韩中文字幕中文 | 麻豆乱淫一区二区三区 | 亚洲精品免费在线视频 | 国产老头老太作爱视频 | 欧美精品久久99 | 亚洲国产精品久久久久久久 | 五月婷在线 | 精品无码国产一区二区三区av | 夜间福利在线观看 | 琪琪电影午夜理论片八戒八戒 | 日韩福利视频一区 | 福利片av | 毛毛毛片 | 久久精品人妻av一区二区三区 | 日韩六十路 | 网站免费黄色 | 1024金沙人妻一区二区三区 | 国产精品一区二区在线看 | 91打屁股 | 国产激情一区二区三区 | 久在线 | 青草青草视频 | 超碰97人人干 | 草久久久 | www黄色在线观看 | 天堂久久网 | 久久综合色88 | 性色tv| 91看片就是不一样 | 蜜臀av性久久久久蜜臀aⅴ麻豆 | 91爱爱网| 成人免费做受小说 | 日本性爱动漫 | 国产精品久久久久久久久免费 | 欧美少妇xxx | 久久亚洲私人国产精品va | 特色黄色片| 亚洲性猛交xxxx乱大交 | 激情网色 | 欧美卡一卡二卡三 | 老司机深夜视频 | 蜜桃精品视频 | 亚洲成人av电影在线 | 欧美123区 | 免费看黄在线看 | 成人网导航 | 成人无码久久久久毛片 | 网红福利视频 | 极品美女扒开粉嫩小泬 |