javascript - jquery中的原型鏈
問題描述
var jQuery = function(global, factory) { return new jQuery.fn.init();}jQuery.fn = jQuery.prototype = { constructor: jQuery, init: function() {this.jquery = 3;return this; }, each: function() {console.log(’each’);return this; }}jQuery.fn.init.prototype = jQuery.fn;// init構(gòu)造函數(shù)jQuery().each().each()
上面是一段jQuery源碼,我的問題是為什么代碼最后一行的第二個(gè)each函數(shù)還能夠執(zhí)行
問題解答
回答1:原型中this指向的是實(shí)例對(duì)象,each里return this來返回這個(gè)對(duì)象,從而實(shí)現(xiàn)鏈?zhǔn)秸{(diào)用
回答2:兩個(gè)each跟一個(gè)each效果一樣,對(duì)象都是jQuery
回答3:因?yàn)槟鉹eturn的是this,別說兩個(gè)了,10個(gè)也可以
鏈?zhǔn)骄幊?/p>
return this
相關(guān)文章:
1. 如何解決Centos下Docker服務(wù)啟動(dòng)無響應(yīng),且輸入docker命令無響應(yīng)?2. 我在centos容器里安裝docker,也就是在容器里安裝容器,報(bào)錯(cuò)了?3. javascript - 微信h5發(fā)送圖文信息,部分設(shè)備點(diǎn)擊“發(fā)送”按鈕時(shí)沒反應(yīng),問題較難重現(xiàn),如何能找到可能存在問題的點(diǎn)?4. javascript - 音樂播放器-圖片旋轉(zhuǎn)5. android - 為 AppBarLayout 設(shè)置的背景圖片 TransitionDrawable 為什么只在第一次打開的時(shí)候有效?6. javascript - js中遞歸與for循環(huán)同時(shí)發(fā)生的時(shí)候,代碼的執(zhí)行順序是怎樣的?7. MySQL timestamp的默認(rèn)值怎么設(shè)置?8. android - 使用百度sdk調(diào)用SDKInitializer.initialize(this)時(shí)報(bào)錯(cuò)?9. objective-c - IOS 分享到微信 提示 應(yīng)用消息數(shù)據(jù)錯(cuò)誤10. docker 17.03 怎么配置 registry mirror ?
