首頁>Club>
19
回覆列表
  • 1 # 其實我只系一隻小白兔

    如果讓我現在重新學JS,我大概會這麼學

    首先我會把Chrome瀏覽器裝好,在dev tools => console裡直接練習熟悉基本語法,變數,資料型別,

    數學運算

    ,字串運算,條件,迴圈基本結構,簡單函式定義和呼叫這些,之所以用chrome dev tools,是因為這時候我不想費勁折騰單獨的編輯器,也不需要在開檔案和資料夾,然後去配一些工具最終才接觸到真正的JS程式設計,我想盡可能直接而少干擾就開始寫JS,這是最重要的,我學JS,當然應該儘快寫JS熟悉了基本語法以後,我會在devtools => console 裡編幾個稍微有挑戰點的小程式,比如實現fibonaci

    數列

    這種簡單的,比如列印一個99乘法表,你也可以自己給自己出幾個題,或者網上隨機找感興趣的題目,別人寫過沒寫過不是重點,重點是找點事情做,讓自己寫程式碼,別小看這些看起來無聊的程式,在你的熟練度達到可以開始第一個專案之前,這些沒有的小程式是最適合練手的,因為它們不牽涉其他方面的知識(比如DOM),所以你不會受到過多幹擾,只需要關注用正確的語法寫出正確的程式,這個過程會讓你更熟悉J

    S語言

    本身。我覺得差不多的時候,就可以學習用JS來做

    web開發

    了,但是別急,這時候還沒準備好新建一個專案,所以我還是會在devtools裡,但是側重是熟悉DOM,我會從簡單的window.alert, window.prompt 開始,慢慢地去試驗DOM的API如何使用,我會買一本DOM程式設計的書,放在案頭,一章一章往下看,邊看邊試,慢慢地接觸到DOM的常用操作,比如document.getElementById, document.getElementsByClassName, addEventListner, 等等,這些呼叫裡有很重要的概念,比如什麼是ID,什麼是Class,什麼是Event,它們有什麼用,JS語言是如何透過API和它們互動的。我會選幾個

    網站

    的頁面,隨便對頁面的元素進行一些修改,比如用JS改變元素的字型,背景色,或者臨時增加事件偵聽等等。DOM API的行為產生的效果你能在網頁上直接看出來,很直觀,也比較有趣,比之前寫純JS程式這些更生動,能激發學習的

    好奇心

    ,並且DOM是JS程式設計師的核心知識。通常看完一本DOM程式設計的書以後,大概地瞭解了JS在web程式設計中的用處了。這時候我會給自己選一個專案,比如留言版這種,以HTML5 Boilerplate為模板,開始第一個web前端專案的開發。資料的儲存可以直接存放在IndexDB裡,所以這時候不需要關心後臺操作。我會大概的考慮好要做什麼功能,然後用之前學到的JS和DOM操作的知識,好好地實現這些功能。這個專案會花去我大量的時間,所以我告訴自己要保持耐心。碰到問題我就去用

    搜尋引擎

    找答案,或者去書裡找到相應的章節。寫完第一個專案以後,我會第一次覺得很有成就感,雖然專案很小,也不復雜。我會找一個老師幫我review一下,聽聽他的意見和建議,也可以準備一些問題,讓他幫忙看接下去可以怎麼

    迭代

    。這時候我會去學習git的基本操作,github的基本使用,然後把專案push上去,把需要的改動commit進git。在這之前我寫的都是原生JS,沒有用到庫,沒有用到框架,這樣的好處是我不需要過早地去糾結庫和框架本身的概念,因為現在真正重要的是JS語言本身,其實我的程式設計領域比起最開始已經有了很大的拓展,你看我已經用JS,配合DOM,寫出來一些很實際的功能,完成了一個前端專案。這時候我的選擇比較多,我可以:繼續用原生JS完成一兩個類似的專案,比如註冊登陸,

    動態圖片

    展示等等;也可以:嘗試改進當前專案的程式設計,做一些程式碼的改進,這時候可以去看看JS模式這樣的書,因為第一個專案的程式碼結構通常沒有特別的程式設計,卻章法,這樣的書能告訴你更好的JS程式可以如何;我還可以乘勢把手上的專案重構成基於jQuery的程式碼,這樣就在對比中學會了jQuery的基礎,理解了jQuery的好處;我甚至可以把當前專案

    程式碼重構

    成ES6語法,這樣就能在對比中ES6語法的好處。接下來我就會去寫更復雜的專案,比如TODOLIST,自己

    從頭到尾

    實現一個這樣的應用,同樣以原生JS(ES5)寫第一個版本,然後選擇是否重構到jQuery或者ES6,如果有興趣,甚至是TypeScript。繼續看JS程式設計方面的書,注意力應該是在程式“設計”,而不是語法細節,大多數時候語法的問題都是可以搜尋到的。程式“設計”是分析

    應用

    的需求,什麼功能,是否需要分模組,模組好不好分,不好分怎麼漸進地找出架構的方案,什麼樣的模組化是比較自然的,如何處理錯誤,是否需要模板支援,複雜的用例是自己實現還是找第三方的庫來整合,等等這些和實際開發零距離的問題。這個專案我還是會放進github,寫完以後我就找一個老師(免費付費都沒關係),review一下我的實現,讓他指出我理解錯誤的地方,這是寶貴的

    學習機

    會。和第一個專案一樣,我還是會根據老師的反饋和自己的思考,決定是否繼續迭代,以及如何繼續改善。到這個時候,我也許會把市面上所有的Javascript的必讀書都買來看,看第一書很慢,第二本書不快,但看到第四五本書的時候,就可以很快了,挑選其中自己不瞭解的章節專門

    閱讀

    ,然後把書裡提到的知識,技巧,實踐用到之前寫過的專案中去。我現在已經有了JS(ES5)比較全面的基礎,也比較熟練了,至少碰到問題我大概知道方向是什麼。我也接觸了jQuery,甚至可能已經比較熟悉;ES6也是。我對語言的基本

    生態

    有了比較全面而深刻的映像。現在我想來學一個框架,我會去做一點功課,看看自己喜歡哪個框架,選定了以後,我就先做完官方的tutorial,同時清楚一些基本的概念問題。然後我做的,就是把之前的專案(如TODOLIST),用框架重新寫一遍,這時候我不會再有覺得很深澀的地方了,因為我有了JS的基礎,已經有了一些自己找答案,debug的經驗,哪怕框架本身有不清楚的地方,我都能自己透過搜尋,或者研究,把答案找出來。哪怕找不出來,也至少有了基本的開發

    思維

    ,雖然不知道答案,但也有大概的方向,如果我要問別人問題,也能問出更有回答價值的問題來,我已經走上了專業開發的路,不是因為我知道框架的這和那,而是我有了做開發的基本習慣和素養。也許這時候我找到了第一份前端的工作,一段時間以後我發現自己對node後臺開發和electron產生了興趣,我閱讀了基本的文件以後,發現其實並不需要怎麼學習就可以用這些東西了。因為JS程式的架構,常見結構,模式,主要概念,我已經熟稔於胸,所以只要是在JS這個生態內,不管新出了什麼技術,無論是庫,框架還是模式,我都能在第一時間找到理解他們的路徑,我已經學會了怎麼學習,那些東西在JS程式裡是重要的,概念是如何組合的,變遷的,所以對我來說,學JS和用JS已經沒有什麼區別了。然後呢,通常真正循序漸進學過來,語言基礎紮實的,到這時候已經不需要人來教了。

  • 2 # 兆隆教育

    JavaScript的學習需要一定的DOM基礎,因為在web前端開發中JavaScript的操作是基於dom的,所以先從HTML和css開始學習,然後熟練地掌握之後,再去學習JavaScript來操作HTML文件,這樣不光可以幫助你很快的弄懂js效果,另外也能讓你更好的理解JavaScript,使學習不會感到枯燥,畢竟看到自己寫出來的程式碼效果還是會有一定的成就感的。然後就是對一些JavaScript庫的學習,因為原生JavaScript程式碼會出嚇你瀏覽器相容問題,而jQuery等前端庫很好的解決了這個問題,在瞭解學習了JavaScript程式設計之後學習jQuery,這樣不至於以後因為瀏覽器相容問題而頭疼,能很好的提高開發效率。

  • 3 # 檸檬影視劇

    要敲程式碼!要敲程式碼!要敲程式碼!重要的事情說3⃣️遍,很多人都是一味的看書,你看到的只是別人的例子,別人的程式碼,別人的實踐。你根本就不知道你會遇到什麼問題,怎麼去解決。下面說下要學習的三個階段,每個階段建議要把書上的程式碼敲一遍,而且要去github找點專案來做,找網站模仿也行,做完以後對比下你的做法和別人的做法有什麼不同,學會思考與總結,把踩過的坑,都用筆記記下來,俗話說好記性不如爛筆頭嘛,記得阿里的一位前端牛人說過,編碼5分鐘,思考兩小時。所以說做一個學會思考的程式設計師很重要。只有學會思考和總結,才能把你腦子裡學到的東西應用到程式碼中來。

    第一階段:建議看javascript高階程式設計這本書

    這本書講的非常全面,我已經看了好幾遍,每次重複看這本書,都會有不一樣的收穫

    第二階段:建議看javascript與DOM程式設計藝術

    這本書主要還是講DOM操作的,其實也可以配合一點上一本看

    第三階段:建議看你不知道的javascript

    這本書主要將比較低層的原理性的東西,適合有一定基礎的人看,這本書會讓你知道javascript引擎是怎麼解析js程式碼的。

  • 中秋節和大豐收的關聯?
  • 魅族手機中,哪款手機散熱最好最穩定?