JavaScript面向对象编程指南(第2版) 🔍
[加拿大] Stoyan Stefanov 斯托扬 著
北京:人民邮电出版社, 2014
中文 [zh] · PDF · 13.6MB · 2014 · 📘 非小说类图书 · 🚀/duxiu/lgli/lgrs/nexusstc/zlib · Save
描述
1.本书是唯一一本介绍JavaScript面向对象编程的图书。
2.本书作者是知名的Web开发人员和作者。受到国内众多前端开发人员,如淘宝UED团队的推崇和推荐。 Stoyan Stefanov:Facebook公司工程师、作家、演说家。他经常会在其博客(www.phpied.com)与一些相关会议中就Web开发话题发表独到见解。他还运营着其他一些网站,其中包括JSPatterns.com—一个用于探讨JavaScript模式的网站。
3.本书内容较为简单,初学者容易上手。
内容提要
JavaScript语言是一种具有高度表达能力的、基于原型特性的、非常灵活的面向对象程序设计语言。本书着重于介绍JavaScript在面向对象方面的特性,以为您展示如何去构建强健的、可维护的、功能强大的应用程序及程序库。
本书是《JavaScript面向对象编程指南》的...
1.本书是唯一一本介绍JavaScript面向对象编程的图书。
2.本书作者是知名的Web开发人员和作者。受到国内众多前端开发人员,如淘宝UED团队的推崇和推荐。 Stoyan Stefanov:Facebook公司工程师、作家、演说家。他经常会在其博客(www.phpied.com)与一些相关会议中就Web开发话题发表独到见解。他还运营着其他一些网站,其中包括JSPatterns.com—一个用于探讨JavaScript模式的网站。
3.本书内容较为简单,初学者容易上手。
内容提要
JavaScript语言是一种具有高度表达能力的、基于原型特性的、非常灵活的面向对象程序设计语言。本书着重于介绍JavaScript在面向对象方面的特性,以为您展示如何去构建强健的、可维护的、功能强大的应用程序及程序库。
本书是《JavaScript面向对象编程指南》的第二版,全书包括8章和4个附录。依次介绍了JavaScript的发展历史、基础性话题(变量、数据类型、数组、循环以及条件表达式)、函数、对象、原型、继承的实现、BOM和DOM等。附录部分包括了学习JavaScript编程常用的参考资源。尤其值得一提的是,本书作者是JavaScript设计模式方面的专家,他在本书第8章中介绍了几种常用的JavaScript编程模式,这也成为他的另一本重要著作《JavaScript模式》(JavaScript Patterns)奠定了基础。
本书全面地覆盖了JavaScript语言的OO特性,同时兼顾基础知识,对初学者来说,是难得的JavaScript佳作。读者不需要具备任何的JavaScript基础知识及项目经验,通过学习这本书,将会在面试有关JavaScript程序设计的职位时游刃有余。
2.本书作者是知名的Web开发人员和作者。受到国内众多前端开发人员,如淘宝UED团队的推崇和推荐。 Stoyan Stefanov:Facebook公司工程师、作家、演说家。他经常会在其博客(www.phpied.com)与一些相关会议中就Web开发话题发表独到见解。他还运营着其他一些网站,其中包括JSPatterns.com—一个用于探讨JavaScript模式的网站。
3.本书内容较为简单,初学者容易上手。
内容提要
JavaScript语言是一种具有高度表达能力的、基于原型特性的、非常灵活的面向对象程序设计语言。本书着重于介绍JavaScript在面向对象方面的特性,以为您展示如何去构建强健的、可维护的、功能强大的应用程序及程序库。
本书是《JavaScript面向对象编程指南》的...
1.本书是唯一一本介绍JavaScript面向对象编程的图书。
2.本书作者是知名的Web开发人员和作者。受到国内众多前端开发人员,如淘宝UED团队的推崇和推荐。 Stoyan Stefanov:Facebook公司工程师、作家、演说家。他经常会在其博客(www.phpied.com)与一些相关会议中就Web开发话题发表独到见解。他还运营着其他一些网站,其中包括JSPatterns.com—一个用于探讨JavaScript模式的网站。
3.本书内容较为简单,初学者容易上手。
内容提要
JavaScript语言是一种具有高度表达能力的、基于原型特性的、非常灵活的面向对象程序设计语言。本书着重于介绍JavaScript在面向对象方面的特性,以为您展示如何去构建强健的、可维护的、功能强大的应用程序及程序库。
本书是《JavaScript面向对象编程指南》的第二版,全书包括8章和4个附录。依次介绍了JavaScript的发展历史、基础性话题(变量、数据类型、数组、循环以及条件表达式)、函数、对象、原型、继承的实现、BOM和DOM等。附录部分包括了学习JavaScript编程常用的参考资源。尤其值得一提的是,本书作者是JavaScript设计模式方面的专家,他在本书第8章中介绍了几种常用的JavaScript编程模式,这也成为他的另一本重要著作《JavaScript模式》(JavaScript Patterns)奠定了基础。
本书全面地覆盖了JavaScript语言的OO特性,同时兼顾基础知识,对初学者来说,是难得的JavaScript佳作。读者不需要具备任何的JavaScript基础知识及项目经验,通过学习这本书,将会在面试有关JavaScript程序设计的职位时游刃有余。
备用文件名
lgli/9787115372703---352c07b6bf40c3c6a15ed0a57332edd4.pdf
备用文件名
lgrsnf/9787115372703---352c07b6bf40c3c6a15ed0a57332edd4.pdf
备用文件名
zlib/Computers/Web Development/[加拿大] Stoyan Stefanov 斯托扬 著/JavaScript面向对象编程指南(第2版)_12790130.pdf
备选标题
JavaScript mian xiang dui xiang bian cheng zhi nan
备选标题
JavaScript面向对象编程指南 2版
备选作者
斯托扬 (Stefanov, Stoyan)
备选作者
(加)斯托扬,(印)库马尔著
备用出版商
The People's Posts and Telecommunications Publishing House
备用版本
China, People's Republic, China
备用版本
Di 2 ban, Bei jing, 2015
备用版本
2021
元数据中的注释
{"isbns":["7115372705","9787115372703"],"last_page":372,"publisher":"人民邮电出版社"}
元数据中的注释
Bookmarks: p1 (p1): 第1章 面向对象的JavaScript
p1-1 (p2): 1.1 回顾历史
p1-2 (p3): 1.2 浏览器的战争与复兴
p1-3 (p4): 1.3 分析现状
p1-4 (p5): 1.4 展望未来
p1-5 (p6): 1.5 ECMAScript 5
p1-6 (p6): 1.6 面向对象的程序设计
p1-6-1 (p7): 1.6.1 对象
p1-6-2 (p8): 1.6.2 类
p1-6-3 (p8): 1.6.3 封装
p1-6-4 (p9): 1.6.4 聚合
p1-6-5 (p9): 1.6.5 继承
p1-6-6 (p10): 1.6.6 多态
p1-7 (p10): 1.7 OOP小结
p1-8 (p11): 1.8 训练环境设置
p1-8-1 (p11): 1.8.1 WebKit所附带的Web审查工具
p1-8-2 (p12): 1.8.2 Mac上的JavaScriptCore
p1-8-3 (p13): 1.8.3 更多控制台
p1-9 (p15): 1.9 本章小结
p2 (p16): 第2章 基本数据类型、数组、循环及条件表达式
p2-1 (p16): 2.1 变量
p2-2 (p19): 2.2 操作符
p2-3 (p23): 2.3 基本数据类型
p2-3-1 (p24): 2.3.1 查看类型操作符—typeof
p2-3-2 (p24): 2.3.2 数字
p2-3-3 (p29): 2.3.3 字符串
p2-3-4 (p33): 2.3.4 布尔值
p2-3-5 (p39): 2.3.5 undefined与null
p2-4 (p41): 2.4 基本数据类型综述
p2-5 (p42): 2.5 数组
p2-5-1 (p43): 2.5.1 增加、更新数组元素
p2-5-2 (p44): 2.5.2 删除元素
p2-5-3 (p44): 2.5.3 数组的数组
p2-6 (p45): 2.6 条件与循环
p2-6-1 (p46): 2.6.1 if条件表达式
p2-6-2 (p46): 2.6.2 else语句
p2-6-3 (p47): 2.6.3 代码块
p2-6-4 (p48): 2.6.4 检查变量是否存在
p2-6-5 (p53): 2.6.5 循环
p2-7 (p58): 2.7 注释
p2-8 (p58): 2.8 本章小结
p2-9 (p59): 2.9 练习题
p3 (p61): 第3章 函数
p3-1 (p62): 3.1 什么是函数
p3-1-1 (p62): 3.1.1 调用函数
p3-1-2 (p63): 3.1.2 参数
p3-2 (p64): 3.2 预定义函数
p3-2-1 (p65): 3.2.1 parseInt()
p3-2-2 (p67): 3.2.2 parseFloat()
p3-2-3 (p68): 3.2.3 isNaN()
p3-2-4 (p68): 3.2.4 isFinite()
p3-2-5 (p69): 3.2.5 URI的编码与反编码
p3-2-6 (p69): 3.2.6 eval()
p3-2-7 (p70): 3.2.7 一点惊喜—alert()函数
p3-3 (p71): 3.3 变量的作用域
p3-4 (p73): 3.4 函数也是数据
p3-4-1 (p75): 3.4.1 匿名函数
p3-4-2 (p75): 3.4.2 回调函数
p3-4-3 (p77): 3.4.3 回调示例
p3-4-4 (p79): 3.4.4 即时函数
p3-4-5 (p80): 3.4.5 内部(私有)函数
p3-4-6 (p81): 3.4.6 返回函数的函数
p3-4-7 (p82): 3.4.7 能重写自己的函数
p3-5 (p83): 3.5 闭包
p3-5-1 (p84): 3.5.1 作用域链
p3-5-2 (p85): 3.5.2 利用闭包突破作用域链
p3-5-3 (p91): 3.5.3 getter与setter
p3-5-4 (p92): 3.5.4 迭代器
p3-6 (p93): 3.6 本章小结
p3-7 (p93): 3.7 练习题
p4 (p95): 第4章 对象
p4-1 (p95): 4.1 从数组到对象
p4-1-1 (p97): 4.1.1 元素、属性、方法与成员
p4-1-2 (p98): 4.1.2 哈希表、关联型数组
p4-1-3 (p98): 4.1.3 访问对象属性
p4-1-4 (p100): 4.1.4 调用对象方法
p4-1-5 (p101): 4.1.5 修改属性与方法
p4-1-6 (p102): 4.1.6 使用this值
p4-1-7 (p102): 4.1.7 构造器函数
p4-1-8 (p104): 4.1.8 全局对象
p4-1-9 (p106): 4.1.9 构造器属性
p4-1-10 (p106): 4.1.10 instanceof操作符
p4-1-11 (p107): 4.1.11 返回对象的函数
p4-1-12 (p108): 4.1.12 传递对象
p4-1-13 (p109): 4.1.13 比较对象
p4-1-14 (p110): 4.1.14 Webkit控制台中的对象
p4-2 (p111): 4.2 内建对象
p4-2-1 (p112): 4.2.1 Object
p4-2-2 (p113): 4.2.2 Array
p4-2-3 (p117): 4.2.3 Function
p4-2-4 (p124): 4.2.4 Boolean
p4-2-5 (p125): 4.2.5 Number
p4-2-6 (p127): 4.2.6 String
p4-2-7 (p132): 4.2.7 Math
p4-2-8 (p134): 4.2.8 Date
p4-2-9 (p139): 4.2.9 RegExp
p4-2-10 (p146): 4.2.10 Error对象
p4-3 (p149): 4.3 本章小结
p4-4 (p150): 4.4 练习题
p5 (p153): 第5章 原型
p5-1 (p154): 5.1 原型属性
p5-1-1 (p154): 5.1.1 利用原型添加方法与属性
p5-1-2 (p155): 5.1.2 使用原型的方法与属性
p5-1-3 (p156): 5.1.3 自身属性与原型属性
p5-1-4 (p158): 5.1.4 利用自身属性重写原型属性
p5-1-5 (p162): 5.1.5 isPrototypeOf()方法
p5-1-6 (p163): 5.1.6 神秘的_proto_链接
p5-2 (p164): 5.2 扩展内建对象
p5-2-1 (p166): 5.2.1 关于扩展内建对象的讨论
p5-2-2 (p167): 5.2.2 原型陷阱
p5-3 (p169): 5.3 本章小结
p5-4 (p170): 5.4 练习题
p6 (p171): 第6章 继承
p6-1 (p171): 6.1 原型链
p6-1-1 (p172): 6.1.1 原型链示例
p6-1-2 (p175): 6.1.2 将共享属性迁移到原型中去
p6-2 (p178): 6.2 只继承于原型
p6-3 (p181): 6.3 uber—子对象访问父对象的方式
p6-4 (p183): 6.4 将继承部分封装成函数
p6-5 (p185): 6.5 属性拷贝
p6-6 (p187): 6.6 请小心处理引用拷贝
p6-7 (p190): 6.7 对象之间的继承
p6-8 (p192): 6.8 深拷贝
p6-9 (p194): 6.9 object()
p6-10 (p195): 6.10 原型继承与属性拷贝的混合应用
p6-11 (p197): 6.11 多重继承
p6-12 (p199): 6.12 寄生式继承
p6-13 (p200): 6.13 构造器借用
p6-14 (p203): 6.14 本章小结
p6-15 (p206): 6.15 案例学习:图形绘制
p6-15-1 (p207): 6.15.1 分析
p6-15-2 (p207): 6.15.2 实现
p6-15-3 (p211): 6.15.3 测试
p6-16 (p213): 6.16 练习题
p7 (p215): 第7章 浏览器环境
p7-1 (p215): 7.1 在HTML页面中引入JavaScript代码
p7-2 (p216): 7.2 概述:BOM与DOM
p7-3 (p217): 7.3 BOM
p7-3-1 (p217): 7.3.1 window对象再探
p7-3-2 (p218): 7.3.2 window.navigator
p7-3-3 (p219): 7.3.3 控制台的备忘功能
p7-3-4 (p219): 7.3.4 window.1 ocation
p7-3-5 (p221): 7.3.5 window.history
p7-3-6 (p222): 7.3.6 window.frames
p7-3-7 (p223): 7.3.7 window.screen
p7-3-8 (p224): 7.3.8 window.open()/close()
p7-3-9 (p225): 7.3.9 window.moveTo()、window.resizeTo()
p7-3-10 (p225): 7.3.10 window.alert()、window.promppt()、window.confirm()
p7-3-11 (p227): 7.3.11 window.setTimeout()、window.setInterval()
p7-3-12 (p229): 7.3.12 window.document
p7-4 (p229): 7.4 DOM
p7-4-1 (p231): 7.4.1 Core DOM与HTML DOM
p7-4-2 (p233): 7.4.2 DOM节点的访问
p7-4-3 (p242): 7.4.3 DOM节点的修改
p7-4-4 (p245): 7.4.4 新建节点
p7-4-5 (p248): 7.4.5 移除节点
p7-4-6 (p250): 7.4.6 只适用于HTML的DOM对象
p7-5 (p254): 7.5 事件
p7-5-1 (p254): 7.5.1 内联HTML属性法
p7-5-2 (p254): 7.5.2 元素属性法
p7-5-3 (p255): 7.5.3 DOM的事件监听器
p7-5-4 (p257): 7.5.4 捕捉法与冒泡法
p7-5-5 (p258): 7.5.5 阻断传播
p7-5-6 (p260): 7.5.6 防止默认行为
p7-5-7 (p261): 7.5.7 跨浏览器的事件监听器
p7-5-8 (p262): 7.5.8 事件类型
p7-6 (p263): 7.6 XMLHttpRequest对象
p7-6-1 (p264): 7.6.1 发送请求
p7-6-2 (p265): 7.6.2 处理响应
p7-6-3 (p266): 7.6.3 在早于7的IE版本中创建XMLHttpRequest对象
p7-6-4 (p267): 7.6.4 A代表异步
p7-6-5 (p267): 7.6.5 X代表XML
p7-6-6 (p268): 7.6.6 实例示范
p7-7 (p270): 7.7 本章小结
p7-8 (p272): 7.8 练习题
p8 (p274): 第8章 编程模式与设计模式
p8-1 (p275): 8.1 编程模式
p8-1-1 (p275): 8.1.1 行为隔离
p8-1-2 (p278): 8.1.2 命名空间
p8-1-3 (p281): 8.1.3 初始化分支
p8-1-4 (p282): 8.1.4 惰性初始
p8-1-5 (p283): 8.1.5 配置对象
p8-1-6 (p285): 8.1.6 私有属性和方法
p8-1-7 (p286): 8.1.7 特权函数
p8-1-8 (p286): 8.1.8 私有函数的公有化
p8-1-9 (p287): 8.1.9 即时函数
p8-1-10 (p288): 8.1.10 模块
p8-1-11 (p289): 8.1.11 链式调用
p8-1-12 (p290): 8.1.12 JSON
p8-2 (p292): 8.2 设计模式
p8-2-1 (p292): 8.2.1 单件模式1
p8-2-2 (p293): 8.2.2 单件模式2
p8-2-3 (p294): 8.2.3 工厂模式
p8-2-4 (p296): 8.2.4 装饰器模式
p8-2-5 (p299): 8.2.5 观察者模式
p8-3 (p302): 8.3 本章小结
p9 (p303): 附录A 保留字
p10 (p307): 附录B 内建函数
p11 (p310): 附录C 内建对象
p12 (p347): 附录D 正则表达式
p1-1 (p2): 1.1 回顾历史
p1-2 (p3): 1.2 浏览器的战争与复兴
p1-3 (p4): 1.3 分析现状
p1-4 (p5): 1.4 展望未来
p1-5 (p6): 1.5 ECMAScript 5
p1-6 (p6): 1.6 面向对象的程序设计
p1-6-1 (p7): 1.6.1 对象
p1-6-2 (p8): 1.6.2 类
p1-6-3 (p8): 1.6.3 封装
p1-6-4 (p9): 1.6.4 聚合
p1-6-5 (p9): 1.6.5 继承
p1-6-6 (p10): 1.6.6 多态
p1-7 (p10): 1.7 OOP小结
p1-8 (p11): 1.8 训练环境设置
p1-8-1 (p11): 1.8.1 WebKit所附带的Web审查工具
p1-8-2 (p12): 1.8.2 Mac上的JavaScriptCore
p1-8-3 (p13): 1.8.3 更多控制台
p1-9 (p15): 1.9 本章小结
p2 (p16): 第2章 基本数据类型、数组、循环及条件表达式
p2-1 (p16): 2.1 变量
p2-2 (p19): 2.2 操作符
p2-3 (p23): 2.3 基本数据类型
p2-3-1 (p24): 2.3.1 查看类型操作符—typeof
p2-3-2 (p24): 2.3.2 数字
p2-3-3 (p29): 2.3.3 字符串
p2-3-4 (p33): 2.3.4 布尔值
p2-3-5 (p39): 2.3.5 undefined与null
p2-4 (p41): 2.4 基本数据类型综述
p2-5 (p42): 2.5 数组
p2-5-1 (p43): 2.5.1 增加、更新数组元素
p2-5-2 (p44): 2.5.2 删除元素
p2-5-3 (p44): 2.5.3 数组的数组
p2-6 (p45): 2.6 条件与循环
p2-6-1 (p46): 2.6.1 if条件表达式
p2-6-2 (p46): 2.6.2 else语句
p2-6-3 (p47): 2.6.3 代码块
p2-6-4 (p48): 2.6.4 检查变量是否存在
p2-6-5 (p53): 2.6.5 循环
p2-7 (p58): 2.7 注释
p2-8 (p58): 2.8 本章小结
p2-9 (p59): 2.9 练习题
p3 (p61): 第3章 函数
p3-1 (p62): 3.1 什么是函数
p3-1-1 (p62): 3.1.1 调用函数
p3-1-2 (p63): 3.1.2 参数
p3-2 (p64): 3.2 预定义函数
p3-2-1 (p65): 3.2.1 parseInt()
p3-2-2 (p67): 3.2.2 parseFloat()
p3-2-3 (p68): 3.2.3 isNaN()
p3-2-4 (p68): 3.2.4 isFinite()
p3-2-5 (p69): 3.2.5 URI的编码与反编码
p3-2-6 (p69): 3.2.6 eval()
p3-2-7 (p70): 3.2.7 一点惊喜—alert()函数
p3-3 (p71): 3.3 变量的作用域
p3-4 (p73): 3.4 函数也是数据
p3-4-1 (p75): 3.4.1 匿名函数
p3-4-2 (p75): 3.4.2 回调函数
p3-4-3 (p77): 3.4.3 回调示例
p3-4-4 (p79): 3.4.4 即时函数
p3-4-5 (p80): 3.4.5 内部(私有)函数
p3-4-6 (p81): 3.4.6 返回函数的函数
p3-4-7 (p82): 3.4.7 能重写自己的函数
p3-5 (p83): 3.5 闭包
p3-5-1 (p84): 3.5.1 作用域链
p3-5-2 (p85): 3.5.2 利用闭包突破作用域链
p3-5-3 (p91): 3.5.3 getter与setter
p3-5-4 (p92): 3.5.4 迭代器
p3-6 (p93): 3.6 本章小结
p3-7 (p93): 3.7 练习题
p4 (p95): 第4章 对象
p4-1 (p95): 4.1 从数组到对象
p4-1-1 (p97): 4.1.1 元素、属性、方法与成员
p4-1-2 (p98): 4.1.2 哈希表、关联型数组
p4-1-3 (p98): 4.1.3 访问对象属性
p4-1-4 (p100): 4.1.4 调用对象方法
p4-1-5 (p101): 4.1.5 修改属性与方法
p4-1-6 (p102): 4.1.6 使用this值
p4-1-7 (p102): 4.1.7 构造器函数
p4-1-8 (p104): 4.1.8 全局对象
p4-1-9 (p106): 4.1.9 构造器属性
p4-1-10 (p106): 4.1.10 instanceof操作符
p4-1-11 (p107): 4.1.11 返回对象的函数
p4-1-12 (p108): 4.1.12 传递对象
p4-1-13 (p109): 4.1.13 比较对象
p4-1-14 (p110): 4.1.14 Webkit控制台中的对象
p4-2 (p111): 4.2 内建对象
p4-2-1 (p112): 4.2.1 Object
p4-2-2 (p113): 4.2.2 Array
p4-2-3 (p117): 4.2.3 Function
p4-2-4 (p124): 4.2.4 Boolean
p4-2-5 (p125): 4.2.5 Number
p4-2-6 (p127): 4.2.6 String
p4-2-7 (p132): 4.2.7 Math
p4-2-8 (p134): 4.2.8 Date
p4-2-9 (p139): 4.2.9 RegExp
p4-2-10 (p146): 4.2.10 Error对象
p4-3 (p149): 4.3 本章小结
p4-4 (p150): 4.4 练习题
p5 (p153): 第5章 原型
p5-1 (p154): 5.1 原型属性
p5-1-1 (p154): 5.1.1 利用原型添加方法与属性
p5-1-2 (p155): 5.1.2 使用原型的方法与属性
p5-1-3 (p156): 5.1.3 自身属性与原型属性
p5-1-4 (p158): 5.1.4 利用自身属性重写原型属性
p5-1-5 (p162): 5.1.5 isPrototypeOf()方法
p5-1-6 (p163): 5.1.6 神秘的_proto_链接
p5-2 (p164): 5.2 扩展内建对象
p5-2-1 (p166): 5.2.1 关于扩展内建对象的讨论
p5-2-2 (p167): 5.2.2 原型陷阱
p5-3 (p169): 5.3 本章小结
p5-4 (p170): 5.4 练习题
p6 (p171): 第6章 继承
p6-1 (p171): 6.1 原型链
p6-1-1 (p172): 6.1.1 原型链示例
p6-1-2 (p175): 6.1.2 将共享属性迁移到原型中去
p6-2 (p178): 6.2 只继承于原型
p6-3 (p181): 6.3 uber—子对象访问父对象的方式
p6-4 (p183): 6.4 将继承部分封装成函数
p6-5 (p185): 6.5 属性拷贝
p6-6 (p187): 6.6 请小心处理引用拷贝
p6-7 (p190): 6.7 对象之间的继承
p6-8 (p192): 6.8 深拷贝
p6-9 (p194): 6.9 object()
p6-10 (p195): 6.10 原型继承与属性拷贝的混合应用
p6-11 (p197): 6.11 多重继承
p6-12 (p199): 6.12 寄生式继承
p6-13 (p200): 6.13 构造器借用
p6-14 (p203): 6.14 本章小结
p6-15 (p206): 6.15 案例学习:图形绘制
p6-15-1 (p207): 6.15.1 分析
p6-15-2 (p207): 6.15.2 实现
p6-15-3 (p211): 6.15.3 测试
p6-16 (p213): 6.16 练习题
p7 (p215): 第7章 浏览器环境
p7-1 (p215): 7.1 在HTML页面中引入JavaScript代码
p7-2 (p216): 7.2 概述:BOM与DOM
p7-3 (p217): 7.3 BOM
p7-3-1 (p217): 7.3.1 window对象再探
p7-3-2 (p218): 7.3.2 window.navigator
p7-3-3 (p219): 7.3.3 控制台的备忘功能
p7-3-4 (p219): 7.3.4 window.1 ocation
p7-3-5 (p221): 7.3.5 window.history
p7-3-6 (p222): 7.3.6 window.frames
p7-3-7 (p223): 7.3.7 window.screen
p7-3-8 (p224): 7.3.8 window.open()/close()
p7-3-9 (p225): 7.3.9 window.moveTo()、window.resizeTo()
p7-3-10 (p225): 7.3.10 window.alert()、window.promppt()、window.confirm()
p7-3-11 (p227): 7.3.11 window.setTimeout()、window.setInterval()
p7-3-12 (p229): 7.3.12 window.document
p7-4 (p229): 7.4 DOM
p7-4-1 (p231): 7.4.1 Core DOM与HTML DOM
p7-4-2 (p233): 7.4.2 DOM节点的访问
p7-4-3 (p242): 7.4.3 DOM节点的修改
p7-4-4 (p245): 7.4.4 新建节点
p7-4-5 (p248): 7.4.5 移除节点
p7-4-6 (p250): 7.4.6 只适用于HTML的DOM对象
p7-5 (p254): 7.5 事件
p7-5-1 (p254): 7.5.1 内联HTML属性法
p7-5-2 (p254): 7.5.2 元素属性法
p7-5-3 (p255): 7.5.3 DOM的事件监听器
p7-5-4 (p257): 7.5.4 捕捉法与冒泡法
p7-5-5 (p258): 7.5.5 阻断传播
p7-5-6 (p260): 7.5.6 防止默认行为
p7-5-7 (p261): 7.5.7 跨浏览器的事件监听器
p7-5-8 (p262): 7.5.8 事件类型
p7-6 (p263): 7.6 XMLHttpRequest对象
p7-6-1 (p264): 7.6.1 发送请求
p7-6-2 (p265): 7.6.2 处理响应
p7-6-3 (p266): 7.6.3 在早于7的IE版本中创建XMLHttpRequest对象
p7-6-4 (p267): 7.6.4 A代表异步
p7-6-5 (p267): 7.6.5 X代表XML
p7-6-6 (p268): 7.6.6 实例示范
p7-7 (p270): 7.7 本章小结
p7-8 (p272): 7.8 练习题
p8 (p274): 第8章 编程模式与设计模式
p8-1 (p275): 8.1 编程模式
p8-1-1 (p275): 8.1.1 行为隔离
p8-1-2 (p278): 8.1.2 命名空间
p8-1-3 (p281): 8.1.3 初始化分支
p8-1-4 (p282): 8.1.4 惰性初始
p8-1-5 (p283): 8.1.5 配置对象
p8-1-6 (p285): 8.1.6 私有属性和方法
p8-1-7 (p286): 8.1.7 特权函数
p8-1-8 (p286): 8.1.8 私有函数的公有化
p8-1-9 (p287): 8.1.9 即时函数
p8-1-10 (p288): 8.1.10 模块
p8-1-11 (p289): 8.1.11 链式调用
p8-1-12 (p290): 8.1.12 JSON
p8-2 (p292): 8.2 设计模式
p8-2-1 (p292): 8.2.1 单件模式1
p8-2-2 (p293): 8.2.2 单件模式2
p8-2-3 (p294): 8.2.3 工厂模式
p8-2-4 (p296): 8.2.4 装饰器模式
p8-2-5 (p299): 8.2.5 观察者模式
p8-3 (p302): 8.3 本章小结
p9 (p303): 附录A 保留字
p10 (p307): 附录B 内建函数
p11 (p310): 附录C 内建对象
p12 (p347): 附录D 正则表达式
备用描述
第1章
面向对象的 JavaScript
1.1 回顾历史
1.2 浏览器的战争与复兴
1.3 分析现状
1.4 展望未来
1.5 ECMAScript 5
1.6 面向对象的程序设计
1.6.1 对象
1.6.2 类
1.6.3 封装
1.6.4 聚合
1.6.5 继承
1.6.6 多态
1.7OOP小结
1.8 训练环境设置
1.8.1 WebKit所附带的 Web审查工具
1.8.2 Mac上的 JavaScriptCore
1.8.3 更多控制台
1.9 本章小结
第2章
基本数据类型、数组、循环及条件表达式
2.1 变量
区分大小写
2.2 操作符
2.3 基本数据类型
2.3.1 查看类型操作符—typeof
2.3.2 数字
2.3.2.1八进制与十六进制
2.3.2.2指数表示法
2.3.2.3 Infinity
2.3.2.4 NaN
2.3.3 字符串
2.3.3.1字符串转换
2.3.3.2特殊字符串
2.3.4 布尔值
2.3.4.1逻辑运算符
2.3.4.2操作符优先级
2.3.4.3惰性求值
2.3.4.4比较运算符
2.3.5 undefined 与 null
2.4 基本数据类型综述
2.5 数组
2.5.1 增加、更新数组元素
2.5.2 删除元素
2.5.3 数组的数组
2.6 条件与循环
2.6.1 if 条件表达式
2.6.2 else语句
2.6.3 代码块
2.6.4 检查变量是否存在
2.6.4.1替代if表达式
2.6.4.2 switch语句
2.6.5 循环
2.6.5.1 while循环
2.6.5.2 do-while循环
2.6.5.3 for循环
2.6.5.4 for-in循环
2.7 注释
2.8 本章小结
2.9 练习题
第3章
函数
3.1 什么是函数
3.1.1 调用函数
3.1.2 参数
3.2 预定义函数
3.2.1 parseInt()
3.2.2 parseFloat()
3.2.3 isNaN()
3.2.4 isFinite()
3.2.5 URI的编码与反编码
3.2.6 eval()
3.2.7 一点惊喜—alert()函数
3.3 变量的作用域
变量提升
3.4 函数也是数据
3.4.1 匿名函数
3.4.2 回调函数
3.4.3 回调示例
3.4.4 即时函数
3.4.5 内部(私有)函数
3.4.6 返回函数的函数
3.4.7 能重写自己的函数
3.5 闭包
3.5.1 作用域链
3.5.2 利用闭包突破作用域链
3.5.2.1闭包#1
3.5.2.2闭包#2
3.5.2.3相关定义与闭包#3
3.5.2.4循环中的闭包
3.5.3 getter与 setter
3.5.4 迭代器
3.6 本章小结
3.7 练习题
第4章
对象
4.1 从数组到对象
4.1.1 元素、属性、方法与成员
4.1.2 哈希表、关联型数组
4.1.3 访问对象属性
4.1.4 调用对象方法
4.1.5 修改属性与方法
4.1.6 使用 this值
4.1.7 构造器函数
4.1.8 全局对象
4.1.9 构造器属性
4.1.10 instanceof 操作符
4.1.11 返回对象的函数
4.1.12 传递对象
4.1.13 比较对象
4.1.14 Webkit 控制台中的对象
4.2 内建对象
4.2.1 Object
4.2.2 Array
一些数组方法
4.2.3 Function
4.2.3.1函数对象的属性
prototype属性
4.2.3.2函数对象的方法
4.2.3.3 call()与apply()
4.2.3.4重新认识arguments对象
4.2.3.5推断对象类型
4.2.4 Boolean
4.2.5 Number
4.2.6 String
String 对象的一些方法
4.2.7 Math
4.2.8 Date
Date对象的方法
例子:计算生日
4.2.9 RegExp
4.2.9.1 RegExp对象的属性
4.2.9.2 RegExp对象的方法
4.2.9.3以正则表达式为参数的字符串方法
4.2.9.4 search()与match()
4.2.9.5 replace()
4.2.9.6回调式替换
4.2.9.7 split()
4.2.9.8用字符串来代替过于简单的regexp对象
4.2.10 Error对象
4.3 本章小结
4.4 练习题
第5章
原型
5.1 原型属性
5.1.1 利用原型添加方法与属性
5.1.2 使用原型的方法与属性
5.1.3 自身属性与原型属性
5.1.4 利用自身属性重写原型属性
枚举属性
5.1.5 isPrototypeOf()方法
5.1.6 神秘的__proto__链接
5.2 扩展内建对象
5.2.1 关于扩展内建对象的讨论
5.2.2 原型陷阱
5.3 本章小结
5.4 练习题
第6章
继承
6.1 原型链
6.1.1 原型链示例
6.1.2 将共享属性迁移到原型中去
6.2 只继承于原型
临时构造器—new F()
6.3 uber—子对象访问父对象的方式
6.4 将继承部分封装成函数
6.5 属性拷贝
6.6 请小心处理引用拷贝
6.7 对象之间的继承
6.8 深拷贝
6.9 object()
6.10 原型继承与属性拷贝的混合应用
6.11 多重继承
混合插入
6.12 寄生式继承
6.13 构造器借用
借用构造器与原型复制
6.14 本章小结
6.15 案例学习:图形绘制
6.15.1 分析
6.15.2 实现
6.15.3 测试
6.16 练习题
第7章
浏览器环境
7.1 在 HTML页面中引入 JavaScript代码
7.2 概述:BOM与 DOM
7.3 BOM
7.3.1 window对象再探
7.3.2 window.navigator
7.3.3 控制台的备忘功能
7.3.4 window.location
7.3.5 window.history
7.3.6 window.frames
7.3.7 window.screen
7.3.8 window.open()/close()
7.3.9 window.moveTo()、window.resizeTo()
7.3.10 window.alert()、window.prompt()、window.confirm()
7.3.11 window.setTimeout()、window.setInterval()
7.3.12 window.document
7.4 DOM
7.4.1 Core DOM 与 HTML DOM
7.4.2 DOM节点的访问
7.4.2.1文档节点
7.4.2.2 documentElement
7.4.2.3子节点
7.4.2.4属性
7.4.2.5访问标签中的内容
7.4.2.6 DOM访问的快捷方法
7.4.2.7兄弟节点、body元素及首尾子节点
7.4.2.8遍历DOM
7.4.3 DOM节点的修改
7.4.3.1修改样式
7.4.3.2玩转表单
7.4.4 新建节点
7.4.4.1纯DOM方法
7.4.4.2 cloneNode()
7.4.4.3 insertBefore()
7.4.5 移除节点
7.4.6 只适用于 HTML的 DOM对象
7.4.6.1访问文档的基本方法
7.4.6.2 document.write()
7.4.6.3 Cookies、Title、Referrer、Domain
7.5 事件
7.5.1 内联 HTML属性法
7.5.2 元素属性法
7.5.3 DOM的事件监听器
7.5.4 捕捉法与冒泡法
7.5.5 阻断传播
7.5.6 防止默认行为
7.5.7 跨浏览器的事件监听器
7.5.8 事件类型
7.6 XMLHttpRequest对象
7.6.1 发送请求
7.6.2 处理响应
7.6.3 在早于 7的IE版本中创建 XMLHttpRequest对象
7.6.4 A代表异步
7.6.5 X代表 XML
7.6.6 实例示范
7.7 本章小结
7.8 练习题
第8章
编程模式与设计模式
8.1 编程模式
8.1.1 行为隔离
8.1.1.1内容
8.1.1.2外观
8.1.1.3行为
8.1.1.4行为隔离实例
8.1.1.5异步的JavaScript代码载入
8.1.2 命名空间
8.1.2.1将对象用做命名空间
8.1.2.2命名空间中的构造器应用
8.1.2.3 namespace()方法
8.1.3 初始化分支
8.1.4 惰性初始
8.1.5 配置对象
8.1.6 私有属性和方法
8.1.7 特权函数
8.1.8 私有函数的公有化
8.1.9 即时函数
8.1.10 模块
8.1.11 链式调用
8.1.12 JSON
8.2 设计模式
8.2.1 单件模式 1
8.2.2 单件模式 2
8.2.2.1全局变量
8.2.2.2构造器属性
8.2.2.3使用私有属性
8.2.3 工厂模式
8.2.4 装饰器模式
装饰一棵圣诞树
8.2.5 观察者模式
8.3 本章小结
附录A.
保留字
附录B
内建函数
附录C
内建对象
附录D
正则表达式
面向对象的 JavaScript
1.1 回顾历史
1.2 浏览器的战争与复兴
1.3 分析现状
1.4 展望未来
1.5 ECMAScript 5
1.6 面向对象的程序设计
1.6.1 对象
1.6.2 类
1.6.3 封装
1.6.4 聚合
1.6.5 继承
1.6.6 多态
1.7OOP小结
1.8 训练环境设置
1.8.1 WebKit所附带的 Web审查工具
1.8.2 Mac上的 JavaScriptCore
1.8.3 更多控制台
1.9 本章小结
第2章
基本数据类型、数组、循环及条件表达式
2.1 变量
区分大小写
2.2 操作符
2.3 基本数据类型
2.3.1 查看类型操作符—typeof
2.3.2 数字
2.3.2.1八进制与十六进制
2.3.2.2指数表示法
2.3.2.3 Infinity
2.3.2.4 NaN
2.3.3 字符串
2.3.3.1字符串转换
2.3.3.2特殊字符串
2.3.4 布尔值
2.3.4.1逻辑运算符
2.3.4.2操作符优先级
2.3.4.3惰性求值
2.3.4.4比较运算符
2.3.5 undefined 与 null
2.4 基本数据类型综述
2.5 数组
2.5.1 增加、更新数组元素
2.5.2 删除元素
2.5.3 数组的数组
2.6 条件与循环
2.6.1 if 条件表达式
2.6.2 else语句
2.6.3 代码块
2.6.4 检查变量是否存在
2.6.4.1替代if表达式
2.6.4.2 switch语句
2.6.5 循环
2.6.5.1 while循环
2.6.5.2 do-while循环
2.6.5.3 for循环
2.6.5.4 for-in循环
2.7 注释
2.8 本章小结
2.9 练习题
第3章
函数
3.1 什么是函数
3.1.1 调用函数
3.1.2 参数
3.2 预定义函数
3.2.1 parseInt()
3.2.2 parseFloat()
3.2.3 isNaN()
3.2.4 isFinite()
3.2.5 URI的编码与反编码
3.2.6 eval()
3.2.7 一点惊喜—alert()函数
3.3 变量的作用域
变量提升
3.4 函数也是数据
3.4.1 匿名函数
3.4.2 回调函数
3.4.3 回调示例
3.4.4 即时函数
3.4.5 内部(私有)函数
3.4.6 返回函数的函数
3.4.7 能重写自己的函数
3.5 闭包
3.5.1 作用域链
3.5.2 利用闭包突破作用域链
3.5.2.1闭包#1
3.5.2.2闭包#2
3.5.2.3相关定义与闭包#3
3.5.2.4循环中的闭包
3.5.3 getter与 setter
3.5.4 迭代器
3.6 本章小结
3.7 练习题
第4章
对象
4.1 从数组到对象
4.1.1 元素、属性、方法与成员
4.1.2 哈希表、关联型数组
4.1.3 访问对象属性
4.1.4 调用对象方法
4.1.5 修改属性与方法
4.1.6 使用 this值
4.1.7 构造器函数
4.1.8 全局对象
4.1.9 构造器属性
4.1.10 instanceof 操作符
4.1.11 返回对象的函数
4.1.12 传递对象
4.1.13 比较对象
4.1.14 Webkit 控制台中的对象
4.2 内建对象
4.2.1 Object
4.2.2 Array
一些数组方法
4.2.3 Function
4.2.3.1函数对象的属性
prototype属性
4.2.3.2函数对象的方法
4.2.3.3 call()与apply()
4.2.3.4重新认识arguments对象
4.2.3.5推断对象类型
4.2.4 Boolean
4.2.5 Number
4.2.6 String
String 对象的一些方法
4.2.7 Math
4.2.8 Date
Date对象的方法
例子:计算生日
4.2.9 RegExp
4.2.9.1 RegExp对象的属性
4.2.9.2 RegExp对象的方法
4.2.9.3以正则表达式为参数的字符串方法
4.2.9.4 search()与match()
4.2.9.5 replace()
4.2.9.6回调式替换
4.2.9.7 split()
4.2.9.8用字符串来代替过于简单的regexp对象
4.2.10 Error对象
4.3 本章小结
4.4 练习题
第5章
原型
5.1 原型属性
5.1.1 利用原型添加方法与属性
5.1.2 使用原型的方法与属性
5.1.3 自身属性与原型属性
5.1.4 利用自身属性重写原型属性
枚举属性
5.1.5 isPrototypeOf()方法
5.1.6 神秘的__proto__链接
5.2 扩展内建对象
5.2.1 关于扩展内建对象的讨论
5.2.2 原型陷阱
5.3 本章小结
5.4 练习题
第6章
继承
6.1 原型链
6.1.1 原型链示例
6.1.2 将共享属性迁移到原型中去
6.2 只继承于原型
临时构造器—new F()
6.3 uber—子对象访问父对象的方式
6.4 将继承部分封装成函数
6.5 属性拷贝
6.6 请小心处理引用拷贝
6.7 对象之间的继承
6.8 深拷贝
6.9 object()
6.10 原型继承与属性拷贝的混合应用
6.11 多重继承
混合插入
6.12 寄生式继承
6.13 构造器借用
借用构造器与原型复制
6.14 本章小结
6.15 案例学习:图形绘制
6.15.1 分析
6.15.2 实现
6.15.3 测试
6.16 练习题
第7章
浏览器环境
7.1 在 HTML页面中引入 JavaScript代码
7.2 概述:BOM与 DOM
7.3 BOM
7.3.1 window对象再探
7.3.2 window.navigator
7.3.3 控制台的备忘功能
7.3.4 window.location
7.3.5 window.history
7.3.6 window.frames
7.3.7 window.screen
7.3.8 window.open()/close()
7.3.9 window.moveTo()、window.resizeTo()
7.3.10 window.alert()、window.prompt()、window.confirm()
7.3.11 window.setTimeout()、window.setInterval()
7.3.12 window.document
7.4 DOM
7.4.1 Core DOM 与 HTML DOM
7.4.2 DOM节点的访问
7.4.2.1文档节点
7.4.2.2 documentElement
7.4.2.3子节点
7.4.2.4属性
7.4.2.5访问标签中的内容
7.4.2.6 DOM访问的快捷方法
7.4.2.7兄弟节点、body元素及首尾子节点
7.4.2.8遍历DOM
7.4.3 DOM节点的修改
7.4.3.1修改样式
7.4.3.2玩转表单
7.4.4 新建节点
7.4.4.1纯DOM方法
7.4.4.2 cloneNode()
7.4.4.3 insertBefore()
7.4.5 移除节点
7.4.6 只适用于 HTML的 DOM对象
7.4.6.1访问文档的基本方法
7.4.6.2 document.write()
7.4.6.3 Cookies、Title、Referrer、Domain
7.5 事件
7.5.1 内联 HTML属性法
7.5.2 元素属性法
7.5.3 DOM的事件监听器
7.5.4 捕捉法与冒泡法
7.5.5 阻断传播
7.5.6 防止默认行为
7.5.7 跨浏览器的事件监听器
7.5.8 事件类型
7.6 XMLHttpRequest对象
7.6.1 发送请求
7.6.2 处理响应
7.6.3 在早于 7的IE版本中创建 XMLHttpRequest对象
7.6.4 A代表异步
7.6.5 X代表 XML
7.6.6 实例示范
7.7 本章小结
7.8 练习题
第8章
编程模式与设计模式
8.1 编程模式
8.1.1 行为隔离
8.1.1.1内容
8.1.1.2外观
8.1.1.3行为
8.1.1.4行为隔离实例
8.1.1.5异步的JavaScript代码载入
8.1.2 命名空间
8.1.2.1将对象用做命名空间
8.1.2.2命名空间中的构造器应用
8.1.2.3 namespace()方法
8.1.3 初始化分支
8.1.4 惰性初始
8.1.5 配置对象
8.1.6 私有属性和方法
8.1.7 特权函数
8.1.8 私有函数的公有化
8.1.9 即时函数
8.1.10 模块
8.1.11 链式调用
8.1.12 JSON
8.2 设计模式
8.2.1 单件模式 1
8.2.2 单件模式 2
8.2.2.1全局变量
8.2.2.2构造器属性
8.2.2.3使用私有属性
8.2.3 工厂模式
8.2.4 装饰器模式
装饰一棵圣诞树
8.2.5 观察者模式
8.3 本章小结
附录A.
保留字
附录B
内建函数
附录C
内建对象
附录D
正则表达式
开源日期
2021-05-03
🚀 快速下载
成为会员以支持书籍、论文等的长期保存。为了感谢您对我们的支持,您将获得高速下载权益。❤️
🐢 低速下载
由可信的合作方提供。 更多信息请参见常见问题解答。 (可能需要验证浏览器——无限次下载!)
- 低速服务器(合作方提供) #1 (稍快但需要排队)
- 低速服务器(合作方提供) #2 (稍快但需要排队)
- 低速服务器(合作方提供) #3 (稍快但需要排队)
- 低速服务器(合作方提供) #4 (稍快但需要排队)
- 低速服务器(合作方提供) #5 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #6 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #7 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #8 (无需排队,但可能非常慢)
- 低速服务器(合作方提供) #9 (无需排队,但可能非常慢)
- 下载后: 在我们的查看器中打开
所有选项下载的文件都相同,应该可以安全使用。即使这样,从互联网下载文件时始终要小心。例如,确保您的设备更新及时。
外部下载
-
对于大文件,我们建议使用下载管理器以防止中断。
推荐的下载管理器:JDownloader -
您将需要一个电子书或 PDF 阅读器来打开文件,具体取决于文件格式。
推荐的电子书阅读器:Anna的档案在线查看器、ReadEra和Calibre -
使用在线工具进行格式转换。
推荐的转换工具:CloudConvert和PrintFriendly -
您可以将 PDF 和 EPUB 文件发送到您的 Kindle 或 Kobo 电子阅读器。
推荐的工具:亚马逊的“发送到 Kindle”和djazz 的“发送到 Kobo/Kindle” -
支持作者和图书馆
✍️ 如果您喜欢这个并且能够负担得起,请考虑购买原版,或直接支持作者。
📚 如果您当地的图书馆有这本书,请考虑在那里免费借阅。
下面的文字仅以英文继续。
总下载量:
“文件的MD5”是根据文件内容计算出的哈希值,并且基于该内容具有相当的唯一性。我们这里索引的所有影子图书馆都主要使用MD5来标识文件。
一个文件可能会出现在多个影子图书馆中。有关我们编译的各种数据集的信息,请参见数据集页面。
有关此文件的详细信息,请查看其JSON 文件。 Live/debug JSON version. Live/debug page.