你不知道的JavaScript
作品簡介
JavaScript語言有很多復雜的概念,但卻用簡單的方式體現出來(比如回調函數),因此,JavaScript開發者無需理解語言內部的原理,就能編寫出功能全面的程序;就像收音機一樣,你無需理解里面的管子和線圈都是做什么用的,只要會操作收音機上的按鍵,就可以收聽你喜歡的節目。然而,JavaScript的這些復雜精妙的概念才是語言的精髓,即使是經驗豐富的JavaScript開發者,如果沒有認真學習也無法真正理解語言本身的特性。正是因為絕大多數人不求甚解,一遇到出乎意料的行為就認為是語言本身有缺陷,進而把相關的特性加入黑名單,久而久之就排除了這門語言的多樣性,人為地使它變得不完整、不安全。
“你不知道的JavaScript”系列就是要讓不求甚解的JavaScript開發者迎難而上,深入語言內部,弄清楚JavaScript每一個零部件的用途。本書介紹了該系列的兩個主題:“作用域和閉包”以及“this和對象原型”。掌握了這些知識之后,無論什么技術、框架和流行詞語,你都能輕松理解。
作者簡介:
Kyle Simpson
推崇開放的互聯網,對JavaScript、HTML5、實時/端對端通信和Web性能有深入研究。他是技術書作家、技術培訓師、講師和開源社區的活躍成員。
譯者簡介:
趙望野
前端工程師,前端基礎技術組leader,曾經負責豌豆莢2.0的前端架構設計和主要開發工作,目前負責Front-end Technical Infrastructure的建設。新浪微博@趙望野。負責本書第一部分“作用域和閉包”的翻譯。
梁杰
北京航空航天大學計算機科學與技術專業大四學生。熱愛JavaScript、Python,熱愛開源,喜歡做各種各樣有趣的事情。負責本書第二部分“this和對象原型”的翻譯。
作品目錄
- O'Reilly Media, Inc.介紹
- 業界評論
- 前言
- 本書排版約定
- 使用代碼示例
- Safari? Books Online
- 聯系我們
- 第一部分 作用域和閉包
- 序
- 第 1 章 作用域是什么
- 1.1 編譯原理
- 1.2 理解作用域
- 1.3 作用域嵌套
- 1.4 異常
- 1.5 小結
- 小測驗答案
- 第 2 章 詞法作用域
- 2.1 詞法階段
- 2.2 欺騙詞法
- 2.3 小結
- 第 3 章 函數作用域和塊作用域
- 3.1 函數中的作用域
- 3.2 隱藏內部實現
- 3.3 函數作用域
- 3.4 塊作用域
- 3.5 小結
- 第 4 章 提升
- 4.1 先有雞還是先有蛋
- 4.2 編譯器再度來襲
- 4.3 函數優先
- 4.4 小結
- 第 5 章 作用域閉包
- 5.1 啟示
- 5.2 實質問題
- 5.3 現在我懂了
- 5.4 循環和閉包
- 5.5 模塊
- 5.6 小結
- 附錄A 動態作用域
- 附錄B 塊作用域的替代方案
- B.1 Traceur
- B.2 隱式和顯式作用域
- B.3 性能
- 附錄C this 詞法
- 附錄D 致謝
- 第二部分 this和對象原型
- 序
- 第 1 章 關于 this
- 1.1 為什么要用 this
- 1.2 誤解
- 1.3 this 到底是什么
- 1.4 小結
- 第 2 章 this 全面解析
- 2.1 調用位置
- 2.2 綁定規則
- 2.3 優先級
- 2.4 綁定例外
- 2.5 this 詞法
- 2.6 小結
- 第 3 章 對象
- 3.1 語法
- 3.2 類型
- 3.3 內容
- 3.4 遍歷
- 3.5 小結
- 第 4 章 混合對象“類”
- 4.1 類理論
- 4.2 類的機制
- 4.3 類的繼承
- 4.4 混入
- 4.5 小結
- 第 5 章 原型
- 5.1 [[Prototype]]
- 5.2 “類”
- 5.3 (原型)繼承
- 5.4 對象關聯
- 5.5 小結
- 第 6 章 行為委托
- 6.1 面向委托的設計
- 6.2 類與對象
- 6.3 更簡潔的設計
- 6.4 更好的語法
- 6.5 內省
- 6.6 小結
- 附錄A ES6中的Class
- A.1 class
- A.2 class 陷阱
- A.3 靜態大于動態嗎
- A.4 小結
- 看完了
免責聲明:本站詞條系由網友創建、編輯和維護,內容僅供參考。
以上內容均為商業內容展示,僅供參考,不具備專業問題解決服務,
如果您需要解決具體問題(尤其在法律、醫學等領域),建議您咨詢相關領域的專業人士。
如您發現詞條內容涉嫌侵權,請通過 948026894@qq.com 與我們聯系進行刪除處理!