App 下载
注册
登录
|
搜索
正在搜索中...
首页
我的书架
我的主页
我的收藏
我的书评
JavaScript语言有很多复杂的概念,但却用简单的方式体现出来(比如回调函数),因此,JavaScript开发者无需理解语言内部的原理,就能编写出功能全面的程序;就像
……
[ 展开全部 ]
收音机一样,你无需理解里面的管子和线圈都是做什么用的,只要会操作收音机上的按键,就可以收听你喜欢的节目。然而,JavaScript的这些复杂精妙的概念才是语言的精髓,即使是经验丰富的JavaScript开发者,如果没有认真学习也无法真正理解语言本身的特性。正是因为绝大多数人不求甚解,一遇到出乎意料的行为就认为是语言本身有缺陷,进而把相关的特性加入黑名单,久而久之就排除了这门语言的多样性,人为地使它变得不完整、不安全。 “你不知道的JavaScript”系列就是要让不求甚解的JavaScript开发者迎难而上,深入语言内部,弄清楚JavaScript每一个零部件的用途。本书介绍了该系列的两个主题:“作用域和闭包”以及“this和对象原型”。掌握了这些知识之后,无论什么技术、框架和流行词语,你都能轻松理解。
[ 收起 ]
作者:[美] Kyle Simpson
出版社:人民邮电出版社
定价:49.00
ISBN:7115385734
给个评价
做个书摘
书摘 (21 )
评价 (1 )
查看所有书摘
按目录显示书摘
只显示目录
前言 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
需要明确的是,this 在任何情况下都不指向函数的词法作用域。它既不指向函数自身,也不指向函数的词法作用域。
this 是在运行时进行绑定的,并不是在编写时绑定,它的上下文取决于函数调 用时的各种条件。this 的绑定和函数声明的位置没有任何关系,只取决于函数的调用方式。
this 实际上是在函数被调用时发生的绑定,它指向什么完全取决于函数在哪里被调用。
怿祺
//
+1
0
分享
收藏
0
条评论
2017-03-21 添加
在此章节添加书摘
此章节有
1
条书摘
点击查看
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
还没有人在此章节添加过书摘,赶紧来抢第一吧!
在此章节添加书摘
导购链接
×
做书摘
文字书摘
读图识字
至少还需要输入
10
字
保存原图片为书摘
上传图片
识别
最多输入
500
个字
上传图片
重新上传
写点笔记吧
至少还需要输入
10
字
章节(选填)
前言 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
页码(选填)
这本书已经添加了这些章节,请勾选或者新建你的书摘所属的章节
add
up
down
remove
前言 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
×
添加一个书摘本
搜索创建书摘本
搜索
正在搜索...
不对,换一下
书名
作者
出版社
备注
ISBN
*
*
前言 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
this 是在运行时进行绑定的,并不是在编写时绑定,它的上下文取决于函数调 用时的各种条件。this 的绑定和函数声明的位置没有任何关系,只取决于函数的调用方式。
this 实际上是在函数被调用时发生的绑定,它指向什么完全取决于函数在哪里被调用。
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