你不知道的JavaScript(上卷)

你不知道的JavaScript(上卷)

基本介紹

  • 書名:你不知道的JavaScript(上卷)
  • 作者:辛普森 ( Kyle Simpson )
  • ISBN:978-7-115-38573-4
  • 出版時間:2015-04
圖書簡介,目錄,

圖書簡介

很多人對JavaScript這門語言的印象都是簡單易學,很容易上手。雖然JavaScript語言本身有很多複雜的概念,但語言的使用者不必深入理解這些概念就可以編寫出功能全面的套用。殊不知,這些複雜精妙的概念才是語言的精髓,即使是經驗豐富的JavaScript開發人員,如果沒有認真學習的話也無法真正理解它們。

目錄

前言 VIII
第 一部分 作用域和閉包
序 2
第 1章 作用域是什麼 4
1.1 編譯原理 4
1.2 理解作用域 6
1.2.1 演員表 6
1.2.2 對話 6
1.2.3 編譯器有話說 7
1.2.4 引擎和作用域的對話 9
1.2.5 小測驗 10
1.3 作用域嵌套 10
1.4 異常 12
1.5 小結 12
第 2章 詞法作用域 14
2.1 詞法階段 14
2.2 欺騙詞法 17
2.2.1 eval 17
2.2.2 with 18
2.2.3 性能 20
2.3 小結 21
第3章 函式作用域和塊作用域 22
3.1 函式中的作用域 22
3.2 隱藏內部實現 23
3.3 函式作用域 26
3.3.1 匿名和具名 27
3.3.2 立即執行函式表達式 28
3.4 塊作用域 30
3.4.1 with 31
3.4.2 try/catch 31
3.4.3 let 32
3.4.4 const 35
3.5 小結 36
第4章 提升 37
4.1 先有雞還是先有蛋 37
4.2 編譯器再度來襲 38
4.3 函式優先 40
4.4 小結 41
第5章 作用域閉包 43
5.1 啟示 43
5.2 實質問題 44
5.3 現在我懂了 47
5.4 循環和閉包 48
5.5 模組 51
5.5.1 現代的模組機制 54
5.5.2 未來的模組機制 56
5.6 小結 57
附錄A 動態作用域 58
附錄B 塊作用域的替代方案 60
附錄C this詞法 64
附錄D 致謝 67
第 二部分 this和對象原型
序 72
第 1章 關於this 74
1.1 為什麼要用this 74
1.2 誤解 76
1.2.1 指向自身 76
1.2.2 它的作用域 79
1.3 this到底是什麼 80
1.4 小結 80
第 2章 this全面解析 82
2.1 調用位置 82
2.2 綁定規則 83
2.2.1 默認綁定 83
2.2.2 隱式綁定 85
2.2.3 顯式綁定 87
2.2.4 new綁定 90
2.3 優先權 91
2.4 綁定例外 95
2.4.1 被忽略的this 96
2.4.2 間接引用 97
2.4.3 軟綁定 98
2.5 this詞法 99
2.6 小結 101
第3章 對象 102
3.1 語法 102
3.2 類型 103
3.3 內容 105
3.3.1 可計算屬性名 106
3.3.2 屬性與方法 107
3.3.3 數組 108
3.3.4 複製對象 109
3.3.5 屬性描述符 111
3.3.6 不變性 114
3.3.7 [[Get]] 115
3.3.8 [[Put]] 116
3.3.9 Getter和Setter 117
3.3.10 存在性 119
3.4 遍歷 121
3.5 小結 124
第4章 混合對象“類” 126
4.1 類理論 126
4.1.1 “類”設計模式 127
4.1.2 JavaScript中的“類” 128
4.2 類的機制 128
4.2.1 建造 128
4.2.2 構造函式 130
4.3 類的繼承 130
4.3.1 多態 132
4.3.2 多重繼承 134
4.4 混入 134
4.4.1 顯式混入 135
4.4.2 隱式混入 139
4.5 小結 140
第5章 原型 142
5.1 [[Prototype]] 142
5.1.1 Object.prototype 144
5.1.2 屬性設定和禁止 144
5.2 “類” 146
5.2.1 “類”函式 146
5.2.2 “構造函式” 149
5.2.3 技術 151
5.3 (原型)繼承 153
5.4 對象關聯 159
5.4.1 創建關聯 159
5.4.2 關聯關係是備用 161
5.5 小結 162
第6章 行為委託 164
6.1 面向委託的設計 165
6.1.1 類理論 165
6.1.2 委託理論 166
6.1.3 比較思維模型 170
6.2 類與對象 173
6.2.1 控制項“類” 174
6.2.2 委託控制項對象 176
6.3 更簡潔的設計 178
6.4 更好的語法 182
6.5 內省 185
6.6 小結 187
附錄A ES6中的Class 189

相關詞條

熱門詞條

聯絡我們