你不知道的JavaScript(上卷)
-
>
決戰(zhàn)行測5000題(言語理解與表達(dá))
-
>
軟件性能測試.分析與調(diào)優(yōu)實(shí)踐之路
-
>
第一行代碼Android
-
>
深度學(xué)習(xí)
-
>
Unreal Engine 4藍(lán)圖完全學(xué)習(xí)教程
-
>
深入理解計(jì)算機(jī)系統(tǒng)-原書第3版
-
>
Word/Excel PPT 2013辦公應(yīng)用從入門到精通-(附贈1DVD.含語音視頻教學(xué)+辦公模板+PDF電子書)
你不知道的JavaScript(上卷) 版權(quán)信息
- ISBN:9787115385734
- 條形碼:9787115385734 ; 978-7-115-38573-4
- 裝幀:一般膠版紙
- 冊數(shù):暫無
- 重量:暫無
- 所屬分類:>>
你不知道的JavaScript(上卷) 本書特色
JavaScript語言有很多復(fù)雜的概念,但卻用簡單的方式體現(xiàn)出來(比如回調(diào)函數(shù)),因此,JavaScript開發(fā) 者無需理解語言內(nèi)部的原理,就能編寫出功能全面的程序;就像收音機(jī)一樣,你無需理解里面的管子和線圈都是做什么用的,只要會操作收音機(jī)上的按鍵,就可以收聽你喜歡的節(jié)目。然而,JavaScript的這些復(fù)雜精妙的概念才是語言的精髓,即使是經(jīng)驗(yàn)豐富的JavaScript開發(fā) 者,如果沒有認(rèn)真學(xué)習(xí)也無法真正理解語言本身的特性。正是因?yàn)榇蠖鄶?shù)人不求甚解,一遇到出乎意料的行為就認(rèn)為是語言本身有缺陷,進(jìn)而把相關(guān)的特性加入黑名單,久而久之就排除了這門語言的多樣性,人為地使它變得不完整、不安全。“你不知道的JavaScript”系列是要讓不求甚解的JavaScript開發(fā) 者迎難而上,深入語言內(nèi)部,弄清楚JavaScript每一個零部件的用途。本書介紹了該系列的兩個主題:“作用域和閉包”以及“this和對象原型”。掌握了這些知識之后,無論什么技術(shù)、框架和流行詞語,你都能輕松理解。
你不知道的JavaScript(上卷) 內(nèi)容簡介
很多人對JavaScript這門語言的印象都是簡單易學(xué),很容易上手。雖然JavaScript語言本身有很多復(fù)雜的概念,但語言的使用者不必深入理解這些概念就可以編寫出功能全面的應(yīng)用。殊不知,這些復(fù)雜精妙的概念才是語言的精髓,即使是經(jīng)驗(yàn)豐富的JavaScript開發(fā)人員,如果沒有認(rèn)真學(xué)習(xí)的話也無法真正理解它們。在本書中,我們要直面當(dāng)前JavaScript開 發(fā)者“不求甚解”的大趨勢,深入理解語言內(nèi)部的機(jī)制。 《你不知道的JavaScript(上卷)》既適合JavaScript語言初學(xué)者閱讀,又適合經(jīng)驗(yàn)豐富的JavaScript開發(fā)人員深入學(xué)習(xí)。
你不知道的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 小測驗(yàn) 10
1.3 作用域嵌套 10
1.4 異! 12
1.5 小結(jié) 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 小結(jié) 21
第3章 函數(shù)作用域和塊作用域 22
3.1 函數(shù)中的作用域 22
3.2 隱藏內(nèi)部實(shí)現(xiàn) 23
3.3 函數(shù)作用域 26
3.3.1 匿名和具名 27
3.3.2 立即執(zhí)行函數(shù)表達(dá)式 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 小結(jié) 36
第4章 提升 37
4.1 先有雞還是先有蛋 37
4.2 編譯器再度來襲 38
4.3 函數(shù)優(yōu)先 40
4.4 小結(jié) 41
第5章 作用域閉包 43
5.1 啟示 43
5.2 實(shí)質(zhì)問題 44
5.3 現(xiàn)在我懂了 47
5.4 循環(huán)和閉包 48
5.5 模塊 51
5.5.1 現(xiàn)代的模塊機(jī)制 54
5.5.2 未來的模塊機(jī)制 56
5.6 小結(jié) 57
附錄A 動態(tài)作用域 58
附錄B 塊作用域的替代方案 60
附錄C this詞法 64
附錄D 致謝 67
第 二部分 this和對象原型
序 72
第 1章 關(guān)于this 74
1.1 為什么要用this 74
1.2 誤解 76
1.2.1 指向自身 76
1.2.2 它的作用域 79
1.3 this到底是什么 80
1.4 小結(jié) 80
第 2章 this全面解析 82
2.1 調(diào)用位置 82
2.2 綁定規(guī)則 83
2.2.1 默認(rèn)綁定 83
2.2.2 隱式綁定 85
2.2.3 顯式綁定 87
2.2.4 new綁定 90
2.3 優(yōu)先級 91
2.4 綁定例外 95
2.4.1 被忽略的this 96
2.4.2 間接引用 97
2.4.3 軟綁定 98
2.5 this詞法 99
2.6 小結(jié) 101
第3章 對象 102
3.1 語法 102
3.2 類型 103
3.3 內(nèi)容 105
3.3.1 可計(jì)算屬性名 106
3.3.2 屬性與方法 107
3.3.3 數(shù)組 108
3.3.4 復(fù)制對象 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 小結(jié) 124
第4章 混合對象“類” 126
4.1 類理論 126
4.1.1 “類”設(shè)計(jì)模式 127
4.1.2 JavaScript中的“類” 128
4.2 類的機(jī)制 128
4.2.1 建造 128
4.2.2 構(gòu)造函數(shù) 130
4.3 類的繼承 130
4.3.1 多態(tài) 132
4.3.2 多重繼承 134
4.4 混入 134
4.4.1 顯式混入 135
4.4.2 隱式混入 139
4.5 小結(jié) 140
第5章 原型 142
5.1 [[Prototype]] 142
5.1.1 Object.prototype 144
5.1.2 屬性設(shè)置和屏蔽 144
5.2 “類” 146
5.2.1 “類”函數(shù) 146
5.2.2 “構(gòu)造函數(shù)” 149
5.2.3 技術(shù) 151
5.3。ㄔ停├^承 153
5.4 對象關(guān)聯(lián) 159
5.4.1 創(chuàng)建關(guān)聯(lián) 159
5.4.2 關(guān)聯(lián)關(guān)系是備用 161
5.5 小結(jié) 162
第6章 行為委托 164
6.1 面向委托的設(shè)計(jì) 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 更簡潔的設(shè)計(jì) 178
6.4 更好的語法 182
6.5 內(nèi)省 185
6.6 小結(jié) 187
附錄A ES6中的Class 189
你不知道的JavaScript(上卷) 作者簡介
Kyle Simpson 推崇開放的互聯(lián)網(wǎng),對JavaScript、HTML5、實(shí)時/端對端通信和Web性能有深入研究。他是技術(shù)書作家、技術(shù)培訓(xùn)師、講師和開源社區(qū)的活躍成員。
- >
李白與唐代文化
- >
月亮與六便士
- >
名家?guī)阕x魯迅:故事新編
- >
伯納黛特,你要去哪(2021新版)
- >
企鵝口袋書系列·偉大的思想20:論自然選擇(英漢雙語)
- >
唐代進(jìn)士錄
- >
經(jīng)典常談
- >
小考拉的故事-套裝共3冊