摘要:前言隨著前端的不斷發(fā)展,很多開發(fā)人員已經(jīng)開始使用等框架,但是很少有人去深入分析以及的源碼本人也是,至今還停留在使用的層面。最近還在寫一些的筆記,有興趣的小白也可以看下我的博客文章源碼分析地址
前言
隨著前端的不斷發(fā)展,很多開發(fā)人員已經(jīng)開始使用react、vue等web框架,但是很少有人去深入分析vue以及react的源碼(本人也是,至今還停留在使用的層面)。框架的使用勢必會有更新迭代的過程,例如jquery、angular、react以及vue。但是撥開這些框架的最底層,卻還是那些原滋原味的javascript。
背景剛開始學(xué)前端的小白,可能覺得javascript這門弱語言非常容易上手,感覺so easy(mom再也不用擔(dān)心我的學(xué)習(xí)),感覺一個星期就能寫出一個漂漂亮亮的網(wǎng)頁了,像什么匯編啊、c語言啊、c++啊簡直是非人類的語言,事實(shí)上只是因?yàn)樗桓叨确庋b了而已,封裝了以后當(dāng)然好用,就比如給c語言封裝類,然后拿來用就特別爽。但是事實(shí)上能夠使用c高度封裝類的人和能夠使用這些類的人可能根本不在一個層面上(封裝的人可能要考慮寄存器操作、內(nèi)存釋放、棧溢出規(guī)避等各種細(xì)節(jié)問題)。web框架也是,能夠使用這些框架以及能夠深入理解框架原理的人,同樣可能也不在一個層面上。可能上面這些有點(diǎn)扯(寫的第一篇文章大家見諒),但是無論如何,不忘初心總歸是正確的,把浮躁的表面去掉,腳踏實(shí)地一步步的走下去才是王道。
興趣不知道大家是在如何的契機(jī)下轉(zhuǎn)入前端這個行業(yè),本人真的是因?yàn)閭€人的興趣愛好,以前在學(xué)校的時候是以物聯(lián)網(wǎng)(嵌入式)為主要的行當(dāng),后來導(dǎo)師要求使用嵌入式設(shè)備開發(fā)一個web服務(wù)器......,于是就開始了最low的網(wǎng)頁開發(fā)(你可以想象一下在嵌入式設(shè)備上跑一個網(wǎng)頁會是什么樣的性能體驗(yàn))。剛開始覺得寫網(wǎng)頁超有意思的,像c語言這種東西嘛,你寫了一大堆代碼不僅要調(diào)試,還需要編譯、下載代碼到設(shè)備,才能看到你所謂的效果(現(xiàn)在的開發(fā)這么智能,肯定不會這么復(fù)雜),但是網(wǎng)頁不一樣啊,一臺電腦,一個編輯器,一個瀏覽器你就可以開始所見即所得的新世界開發(fā)......于是,我就開始從一個老坑跳進(jìn)了一個充滿了惡意的新坑......
學(xué)習(xí)學(xué)習(xí)分為很多種,每個人的學(xué)習(xí)方法也不一樣,有些牛逼的人學(xué)習(xí)效率就是特別高。我經(jīng)常聽到什么一個星期看完了jquery源碼是什么水平啊,兩個星期看完了牛書啊.....我真的很崇拜你們的看書速度,也很崇拜你們的理解能力,寶寶做不到啊......寶寶笨,所以只好一點(diǎn)點(diǎn)的學(xué)習(xí),一點(diǎn)點(diǎn)的寫代碼,一點(diǎn)點(diǎn)的調(diào)試,一點(diǎn)點(diǎn)的寫出感受理解,有的時候一遍不行就兩遍,兩遍理解了還是不會用,就三遍......放心,犀牛書就看了兩三遍,高級編程就看了兩三遍,css權(quán)威指南就看了兩三遍......沒辦法啊,你們這些大神所謂的看規(guī)范、看標(biāo)準(zhǔn)、看源碼寶寶真的學(xué)不會啊......
不管怎么樣,我現(xiàn)在覺得我的學(xué)習(xí)雖然效率不高,花費(fèi)的時間多,但是真的在某些工作場合特別有用。很多人都覺得這些古老的東西還有什么學(xué)習(xí)的必要,那人家都去研究javascript這么語言底層是怎么被封裝的之類的(我相信肯定有這樣的大神)......,那它們搞這些研究是為了干嘛......
總結(jié)emmmm.....,第一次發(fā)這篇文章,也不知道自己想表達(dá)個啥意思,亂七八糟的寫一堆,希望也有像我這樣笨笨的人一直能夠堅(jiān)持最初的學(xué)習(xí),不忘初心,哪怕這些學(xué)習(xí)也是別人學(xué)習(xí)的經(jīng)驗(yàn)、別人學(xué)習(xí)的筆記、別人學(xué)習(xí)的書籍嘛......最終只要學(xué)以致用那也是一種好的結(jié)果(學(xué)習(xí)歸學(xué)習(xí),自我學(xué)習(xí)的能力還是要不斷提升的),最后附上我去年這個時候?qū)W習(xí)的一本小筆記(jquery源碼分析),里面結(jié)合了很多犀牛書、高級程序設(shè)計(jì)以及別的大神博客的一些內(nèi)容知識(例如閉包啊、作用域鏈啊、原型鏈啊、事件機(jī)制等等),希望感興趣的小白能夠從中獲取一些有用的東西。(emmmmm.....最近還在寫一些css的筆記,有興趣的小白也可以看下我的github.)
博客文章: jquery源碼分析
github地址:ziyi2
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/94486.html
摘要:將或者的控制權(quán)讓給第一個實(shí)現(xiàn)它的那個庫,確保不會與其它庫的對象發(fā)生沖突。 noConflict() noConflict()將$或者jQuery的控制權(quán)讓給第一個實(shí)現(xiàn)它的那個庫,確保jQuery不會與其它庫的$對象發(fā)生沖突。 jQuery中源碼如下: var _jQuery = window.jQuery, _$ = window.$; jQuery.noConflict =...
摘要:可以直接在這里查看至于的開源就不多說了。官網(wǎng)一個庫的官網(wǎng)永遠(yuǎn)是了解它最新進(jìn)展和學(xué)習(xí)資料的首選網(wǎng)站。比如下面我們就拿舉例分析下它的源碼。不解釋,你可以直接拿過去改吧改吧用在你自己的庫里。 上節(jié)課我們說了寫一個庫的準(zhǔn)備,但是這節(jié)課并不是寫庫為什么,有句話叫你沒吃過豬肉還沒看過豬走。所以我們先看看別人的庫是怎么寫的。在我們擁有了足夠扎實(shí)的基礎(chǔ)之后我們要做的不是閉門造車,而是去閱讀一些知名的庫...
摘要:的指向的是對象,所以此時擴(kuò)展的是對象,可以直接通過的方式調(diào)用。 寫過jquery插件的人都知道可以通過jquery提供的extend可以對jquery對象進(jìn)行擴(kuò)展,而且該方法不僅可以對jquery對象擴(kuò)展,還能給一個對象添加新的屬性和方法,這個在后面會介紹。 通過不同的方式調(diào)用extend擴(kuò)展的方法也不同: 通過 $.extend() 擴(kuò)展的是靜態(tài)方法; 而通過 $.fn.exten...
摘要:這里在函數(shù)中有一個的操作,一般構(gòu)造函數(shù)不會這樣寫,但這樣寫并不會影響的結(jié)果,這參照之前的分解,便可以推出結(jié)果的一致只是返回了不同但值相同的變量。 這篇文章可以說是讀這篇文章這篇文章后的總結(jié)。 jQuery最基本的構(gòu)成結(jié)構(gòu): var jQuery = window.jQuery = window.$ = function(a,b){ return new jQuery.fn.init...
摘要:文章出處拜讀一個開源框架,最想學(xué)到的就是設(shè)計(jì)的思想和實(shí)現(xiàn)的技巧。利用下的簡單工廠模式,來將所有對于同一個對象的操作指定同一個實(shí)例。所以的中提供了以上中擴(kuò)展函數(shù)。 文章出處 http://www.cnblogs.com/aaronjs/p/3278578.html 拜讀一個開源框架,最想學(xué)到的就是設(shè)計(jì)的思想和實(shí)現(xiàn)的技巧。 廢話不多說,jquery這么多年了分析都寫爛了,老早以前就拜讀過,...
閱讀 3540·2019-08-30 12:58
閱讀 923·2019-08-29 16:37
閱讀 2796·2019-08-29 16:29
閱讀 3104·2019-08-26 12:18
閱讀 2364·2019-08-26 11:59
閱讀 3405·2019-08-23 18:27
閱讀 2769·2019-08-23 16:43
閱讀 3301·2019-08-23 15:23