目前工作上使用最多的語言是 JavaScript,雖然本身對前端很有興趣,但學習 JavaScript 也已經是從工作之後才開始的了,算一算到現在學習 JavaScript 這個語言的時間大約有八個月了,回顧一下也算是學習到了很多知識,但仍有很多很多的知識是我需要加強的。
工作剛用上 JavaScript 的時候,專案中出現了許多無法理解的語言概念,例如:prototype,超特別的 this,Closure ...etc,對那時只寫過 C++ 等強型別語言的我來說根本是無字天書。
為了要快速進入狀況,去天瓏找了 JavaScript 相關的書籍,當時千挑萬選選到的書就是 You Don't Know JS : Scope & Closure, this & Object Prototypes
。看到的第一眼心想,哇這名字真的夠嗆耶,而且內容根本涵蓋所有我最疑惑的主題阿!!! 買回去研究後,工作中許多的疑問頓時有了解答,不得不說,真的有種發現新世界的 FU 呢。除了 You Don't Know JS 以外,我也從自己報名的 JS 課程,工作前輩指導以及網路文章上得到了許多珍貴的知識。
今年參加了 iThome 鐵人賽,並將題目訂為 I Want To Know JS,是想更加深入了解 JavaScript,也藉由這個機會整理舊知識 & 學習新知識並快速成長。在這個系列中,許多內容整理自 You Don't Know JS,除此之外也有很多上課 / 工作上 / 網路文章 學習到的知識,不論是哪種,都會盡量標註參考資料以尊重原作者,也能作為自已與讀者的往後的學習資源。
期望在這次的鐵人賽中,我能看到自己的鋼鐵意志。
此系列的內容會深入探討 JavaScript,以下是我目前預計的涵蓋範圍,實際的範圍還是會依之後文章的篇幅與狀況來做調整。
- 型別
- 運算子
- Function
- Scope
- this
- Prototype
- Coding Styles & Best Practice
- Debug 心得
主要分成以下幾個部分
-
內容
內容會盡量簡潔有力,以重點整理的方式,適時搭配一些圖片來讓讀者快速吸收知識
另外,不同主題涵蓋相同內容時可能會有些許重複,這麼做是為了方便讀者了解
-
範例
可作為內容的佐證,也用來協助了解內容
大部分的範例都可以在空白頁的 Console 下執行,開啟步驟如下:
- 到網址列上輸入
about:blank
- 開啟
開發者人員工具
- 點開其中的
Console/主控台
tab 就可輸入程式碼
- 到網址列上輸入
-
小結
在文末的部分會加入小結來概述這篇文章
-
參考
文末會標註參考的來源,尊重原作者,也能作為自已與讀者的往後的學習資源
-
題外話
這部分會加入一些當初的學習心得,或者目前的感想等與主題不直接相關的話題
- 想更深入了解 JavaScript 初學者
- 想電小菜雞的前輩們
- 若文章中有任何錯誤的觀念,或有任何改善的空間,非常希望各位不吝指教
- 為了方便之後的維護與擴充,此系列將放在 GitHub 上