- 你不知道的JavaScript(上卷)
- (美)凱爾辛普森
- 875字
- 2019-06-06 10:48:10
序
小時候,我特別喜歡把東西拆成零部件,然后再重新裝回去——舊的移動電話、立體聲音響等我能拿到的一切物件都沒能幸免。對于年幼的我來說,使用這些東西還為時過早,但是一旦它們壞了,我就立刻想弄清楚它們的工作原理。
記得有一次,我看見一個老式收音機的電路板,其中有一個纏滿銅線的奇怪長管。我不知道這個長管的用途,所以立刻開始研究它。它有什么用?為什么出現在收音機里?為什么它看起來和電路板的其他部分不一樣?為什么會有銅線纏繞著它?如果我把銅線拆下來會發生什么?現在我知道了,這是一個在晶體管收音機中很常見的、由纏繞著銅線的鐵氧體棒制成的環形天線。
你是否也曾對解答各種各樣的為什么很上癮?大多數孩子都會。事實上,這可能是孩子身上我最喜歡的地方——求知欲很強。
很遺憾,現在我從事著一份專業性的工作,并以制作一些東西來度日。而我兒時的夢想是有一天能夠制作那些被我拆開過的東西。當然,現在我所制作的大部分東西都是用JavaScript做成的,而不是鐵氧體棒……但它們很相似!盡管我曾經一度非常熱愛制作東西,但是現在卻更渴望了解事物的運行原理。我經常尋找解決問題或修復bug的最佳方法,卻很少花時間來研究我所使用的工具。
這也是為什么我一看到“你不知道的JavaScript”系列圖書就很激動,因為JavaScript的確有很多我不了解的地方。我每天從早到晚都在使用JavaScript,并且已經持續了好幾年,但我真的了解它了嗎?答案是否定的。當然,我了解它的很多細節,并且經常閱讀標準文檔和郵件列表中的內容,但是了解的程度低于我內心那個六歲的孩子希望我達到的水平。
第一部分“作用域和閉包”是一個非常好的切入點。它對于如我一般的受眾來說非常有用(希望對你也同樣有用)。這本書并不會教你如何使用JavaScript,但是它會讓你意識到對于其內部的運行原理你可能了解得并不多。同時這本書出現的時機也非常巧:ES6終于穩定下來了,并且各家瀏覽器的實現工作也正在逐步展開。如果你還沒有學習其中的新功能(比如let和const),這本書將起到很好的介紹作用。
所以我希望你能喜歡這本書,尤其希望Kyle對JavaScript工作原理每一個細節的批判性思考會滲透到你的思考過程和日常工作中。知其然,也要知其所以然。
Shane Hudson
- 黑客攻防從入門到精通(實戰秘笈版)
- SOA實踐
- Java 開發從入門到精通(第2版)
- Mastering Objectoriented Python
- Three.js開發指南:基于WebGL和HTML5在網頁上渲染3D圖形和動畫(原書第3版)
- The DevOps 2.4 Toolkit
- Interactive Applications Using Matplotlib
- Java應用開發技術實例教程
- C語言程序設計同步訓練與上機指導(第三版)
- Linux:Embedded Development
- Python爬蟲、數據分析與可視化:工具詳解與案例實戰
- Everyday Data Structures
- Emotional Intelligence for IT Professionals
- Getting Started with Python
- Learning Python Data Visualization