jquery原始碼;是怎麼實現直接呼叫$()函式原型上的方法的?
1:當我們呼叫jQuery()方法時;就會先載入return new jQuery.prototype.init();此程式碼返回一個init()物件;屬於jQuery()物件。jQuery.prototype.init.prototype=jQuery.prototype;這句話讓初始化函式init()這個函式去繼承jQuery原型上的方法;然後就能直接呼叫jQuery原型上的方法;;這是jquery的做法;
2;return new jQuery.prototype.init();這句程式碼做了兩件事情;(1)執行初始化函式init();(2)返回一個init()物件;
3;jQuery.prototype.init.prototype=jQuery.prototype;這句話讓init()物件指向了jQuery的原型;所以執行jQuery()函式時;返回的物件就可以呼叫jQuery原型上的方法;jQuery.prototype.init.prototype這裡的jQuery是一個夠著函式;。
這是普通面向對物件的做法;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4560/viewspace-2816968/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ClickHouse原始碼筆記3:函式呼叫的向量化實現原始碼筆記函式
- 函式: 函式是怎麼使用的?函式
- 呼叫了這麼久的JS方法是長在物件、類、值本身還是原型鏈上?JS物件原型
- JVM的ServerSocket是怎麼實現的(上)JVMServer
- react-redux原始碼分析及實現原型(上)ReactRedux原始碼原型
- 背景透明的實現,直播電商原始碼是怎麼做的原始碼
- Vue原始碼探祕(五)(_render 函式的實現)Vue原始碼函式
- ClickHouse原始碼筆記1:聚合函式的實現原始碼筆記函式
- python函式的定義和呼叫是什麼?Python函式
- Mybatis原始碼分析(四)mapper介面方法是怎樣被呼叫到的MyBatis原始碼APP
- 兩種方法使vue實現jQuery呼叫VuejQuery
- jQuery的鏈式呼叫jQuery
- jQuery 原始碼學習 (三) 回撥函式jQuery原始碼函式
- jQuery 原始碼剖析(一) - 核心功能函式jQuery原始碼函式
- 使用emscripten實現js直接呼叫C程式碼(emscripten的初探)JSC程式
- 什麼是IIFE(立即呼叫函式表示式)?函式
- axios為什麼可以使用物件和函式兩種方式呼叫?是如何實現的?iOS物件函式
- 「python函式:」給定一個函式,怎麼在不修改原始碼的前提下,實現函式執行前和執行後輸出Python函式原始碼
- 對jquery原始碼中 clean函式的一些體會jQuery原始碼函式
- JavaScript 原型的實際應用之實現一個 jQueryJavaScript原型jQuery
- 閱讀原始碼後,來講講React Hooks是怎麼實現的原始碼ReactHook
- 請教,blade模板中怎麼呼叫自定義的函式?函式
- 呼叫支付介面,實現直播帶貨系統原始碼的線上支付原始碼
- python3程式碼中函式切割列表怎麼實現?Python函式
- Runtime原始碼 方法呼叫的過程原始碼
- PostgreSQL 原始碼解讀(249)- 實現簡單的鉤子函式SQL原始碼函式
- 鴻蒙OS的系統呼叫是如何實現的? | 解讀鴻蒙原始碼鴻蒙原始碼
- 類物件作為實參傳入函式,函式是複製物件還是直接使用物件的問題物件函式
- jQuery操作iframe中js函式的方法小結jQueryJS函式
- jquery繫結未來新建立函式的方法onjQuery函式
- [提問交流]我的公共函式呼叫不出來怎麼解函式
- js的call函式”原始碼”JS函式原始碼
- C#使用委託實現函式回撥,方法呼叫攔截C#函式
- 外部函式的呼叫函式
- python中calss(類)的使用,類的教程,類中的函式怎麼呼叫。Python函式
- PostgreSQL 原始碼解讀(216)- 實現簡單的擴充套件函式SQL原始碼套件函式
- Linux QoS實現框架:函式呼叫流程圖Linux框架函式流程圖
- 呼叫函式實現兩個數交換函式