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:函式呼叫的向量化實現原始碼筆記函式
- VB中呼叫WebService上的函式的方法Web函式
- 函式: 函式是怎麼使用的?函式
- 背景透明的實現,直播電商原始碼是怎麼做的原始碼
- JVM的ServerSocket是怎麼實現的(上)JVMServer
- jQuery的ready函式原始碼解讀jQuery函式原始碼
- 呼叫了這麼久的JS方法是長在物件、類、值本身還是原型鏈上?JS物件原型
- react-redux原始碼分析及實現原型(上)ReactRedux原始碼原型
- Vue原始碼探祕(五)(_render 函式的實現)Vue原始碼函式
- ClickHouse原始碼筆記1:聚合函式的實現原始碼筆記函式
- 什麼是IIFE(立即呼叫函式表示式)?函式
- Mybatis原始碼分析(四)mapper介面方法是怎樣被呼叫到的MyBatis原始碼APP
- python函式的定義和呼叫是什麼?Python函式
- 閱讀原始碼後,來講講React Hooks是怎麼實現的原始碼ReactHook
- [C練習]實現memcpy原型函式memcpy原型函式
- 使用emscripten實現js直接呼叫C程式碼(emscripten的初探)JSC程式
- 鴻蒙OS的系統呼叫是如何實現的? | 解讀鴻蒙原始碼鴻蒙原始碼
- js實現的iframe呼叫父頁面函式JS函式
- 淺談API函式呼叫的方法API函式
- 兩種方法使vue實現jQuery呼叫VuejQuery
- C++原始碼免殺之函式的動態呼叫C++原始碼函式
- 「python函式:」給定一個函式,怎麼在不修改原始碼的前提下,實現函式執行前和執行後輸出Python函式原始碼
- jQuery的鏈式呼叫jQuery
- Spring原始碼學習之:@async 方法上新增該註解實現非同步呼叫的原理Spring原始碼非同步
- jQuery 原始碼剖析(一) - 核心功能函式jQuery原始碼函式
- jQuery 原始碼學習 (三) 回撥函式jQuery原始碼函式
- jQuery函式的等價原生函式程式碼示例jQuery函式
- JS函式的定義與呼叫方法JS函式
- 對jquery原始碼中 clean函式的一些體會jQuery原始碼函式
- 向JVM註冊本地方法是怎麼實現的JVM
- JavaScript 原型的實際應用之實現一個 jQueryJavaScript原型jQuery
- 微信直播是怎麼實現的?
- 呼叫函式實現兩個數交換函式
- python3程式碼中函式切割列表怎麼實現?Python函式
- [提問交流]我的公共函式呼叫不出來怎麼解函式
- 請教,blade模板中怎麼呼叫自定義的函式?函式
- 類物件作為實參傳入函式,函式是複製物件還是直接使用物件的問題物件函式
- jQuery如何實現新增自定義函式jQuery函式