展开全部

主编推荐语

JavaScript学习的必备书籍。

内容简介

本书采用ES5和ES6融合的方式编写,兼顾了主流应用和发展趋势,书中知识点结合实际开发讲解演示。

本书从JavaScript的历史开始讲解,由浅入深地带领读者逐渐走入JavaScript的世界。

本书内容包括:变量、基本数据类型、运算符和表达式、语句、函数、对象、数组、BOM、DOM、AJAX、异步编程及ES6语法等。

本书语言通俗易懂,案例贴近实际工作需求,内容全面,深入浅出地讲解了前端开发需掌握的知识点。与此同时,本书还对一些底层实现进行了介绍,让读者在阅读完本书之后对JavaScript有更深入的理解。

目录

  • 版权信息
  • 内容简介
  • 前言
  • 关于我们
  • 第1章 走进JavaScript世界
  • 1.1 JavaScript是什么
  • 1.2 JavaScript的历史
  • 1.3 JavaScript与Java无关
  • 1.4 JavaScript的应用场景
  • 1.5 JavaScript的不同实现
  • 1.5.1 ECMAScript
  • 1.5.2 BOM
  • 1.5.3 DOM
  • 1.5.4 Node.js
  • 1.6 JavaScript的重要版本
  • 1.7 编写第一行JavaScript代码
  • 1.7.1 编程工具
  • 1.7.2 代码编写位置
  • 1.7.3 代码注释
  • 1.7.4 空格与分号
  • 1.7.5 程序调试
  • 1.8 严格模式
  • 1.9 本章小结
  • 第2章 变量
  • 2.1 var声明
  • 2.1.1 var声明作用域
  • 2.1.2 var声明提升
  • 2.2 let声明
  • 2.2.1 let声明的块作用域
  • 2.2.2 暂时性死区
  • 2.3 const声明
  • 2.4 变量声明的最佳实践
  • 2.5 变量的命名规范
  • 2.6 案例:如何交换两个变量的值
  • 2.7 本章小结
  • 第3章 基本数据类型
  • 3.1 使用typeof检测数据类型
  • 3.2 Number类型
  • 3.2.1 认识Number类型
  • 3.2.2 Infinity和-Infinity
  • 3.2.3 多种进制
  • 3.2.4 特殊数值NaN
  • 3.3 String类型
  • 3.3.1 认识String类型
  • 3.3.2 模板字符串
  • 3.3.3 特殊字符
  • 3.4 Boolean类型
  • 3.5 Undefined类型
  • 3.6 Null类型
  • 3.7 BigInt类型
  • 3.8 显式类型转换
  • 3.8.1 将其他类型值转换为Number类型
  • 3.8.2 将其他类型值转换为String类型
  • 3.8.3 将其他类型值转换为Boolean类型
  • 3.9 隐式类型转换
  • 3.10 手动类型转换
  • 3.11 案例:小小加法计算器
  • 3.12 本章小结
  • 第4章 运算符和表达式
  • 4.1 算术运算符
  • 4.1.1 加、减法运算符
  • 4.1.2 乘、除法运算符
  • 4.1.3 取余运算符
  • 4.1.4 案例:计算一个三位数各个数位上的数字的总和
  • 4.2 赋值运算符
  • 4.2.1 二元赋值运算符
  • 4.2.2 一元赋值运算符
  • 4.3 比较运算符
  • 4.3.1 大于运算符和小于运算符
  • 4.3.2 等于运算符和不等于运算符
  • 4.4 逻辑运算符
  • 4.4.1 非运算
  • 4.4.2 且运算
  • 4.4.3 或运算
  • 4.4.4 短路现象
  • 4.4.5 案例:数轴上的范围表示
  • 4.5 条件运算符
  • 4.6 其他运算符
  • 4.7 运算符优先级
  • 4.7.1 数学运算符的优先级
  • 4.7.2 逻辑运算符的优先级
  • 4.7.3 综合运算优先级
  • 4.8 本章小结
  • 第5章 语句
  • 5.1 条件语句之if语句
  • 5.1.1 单分支if语句和双分支if语句
  • 5.1.2 多分支if语句
  • 5.1.3 if语句的嵌套
  • 5.1.4 案例:考试成绩分档
  • 5.2 条件语句之switch语句
  • 5.2.1 基本语法
  • 5.2.2 案例:判断某月份有多少天
  • 5.3 循环语句之for循环
  • 5.3.1 基本语法
  • 5.3.2 案例:使用for循环输出年份和年龄
  • 5.4 循环语句之while循环
  • 5.4.1 基本语法
  • 5.4.2 案例:使用while循环输出年份和年龄
  • 5.5 循环语句之do…while循环
  • 5.5.1 基本语法
  • 5.5.2 案例:生成不都为0的随机数
  • 5.6 跳转
  • 5.6.1 break
  • 5.6.2 continue
  • 5.6.3 区分while和do…while
  • 5.7 循环嵌套
  • 5.8 本章小结
  • 第6章 函数(上)
  • 6.1 函数的定义与调用
  • 6.2 函数封装练习
  • 6.3 函数参数相关
  • 6.3.1 参数默认值
  • 6.3.2 剩余参数
  • 6.4 作用域
  • 6.5 作用域链
  • 6.6 箭头函数
  • 6.6.1 箭头函数的语法使用
  • 6.6.2 箭头函数的特性
  • 6.7 本章小结
  • 第7章 对象
  • 7.1 创建对象
  • 7.1.1 new Object()
  • 7.1.2 对象字面量
  • 7.1.3 new自定义构造函数
  • 7.1.4 Object.create()
  • 7.2 ES6新增对象书写格式
  • 7.2.1 属性和方法的简写
  • 7.2.2 属性名表达式
  • 7.3 操作对象的属性和方法
  • 7.3.1 点操作符和中括号操作符
  • 7.3.2 新增属性
  • 7.3.3 修改属性
  • 7.3.4 读取属性
  • 7.3.5 删除属性
  • 7.3.6 定义getter和setter的属性
  • 7.4 原型与原型链
  • 7.4.1 原型
  • 7.4.2 原型链
  • 7.4.3 instanceof原理分析
  • 7.5 内置引用类型和对象
  • 7.5.1 String类型
  • 7.5.2 Number类型
  • 7.5.3 Boolean类型
  • 7.5.4 Date类型
  • 7.5.5 RegExp类型
  • 7.5.6 Math对象
  • 7.6 本章小结
  • 第8章 函数(下)
  • 8.1 IIFE
  • 8.2 arguments
  • 8.2.1 伪(类)数组
  • 8.2.2 arguments的使用
  • 8.3 回调函数
  • 8.3.1 内置的回调函数
  • 8.3.2 自定义回调函数
  • 8.4 函数递归
  • 8.5 函数中的this
  • 8.6 函数也是对象
  • 8.7 函数对象的方法
  • 8.7.1 call()方法
  • 8.7.2 apply()方法
  • 8.7.3 bind()方法
  • 8.7.4 案例:伪数组转数组
  • 8.8 预解析
  • 8.8.1 变量提升与函数提升
  • 8.8.2 执行上下文与执行上下文栈
  • 8.9 闭包
  • 8.10 内存管理
  • 8.10.1 内存的生命周期
  • 8.10.2 垃圾回收
  • 8.10.3 内存泄漏与内存溢出
  • 8.11 本章小结
  • 第9章 数组
  • 9.1 数组的概念
  • 9.2 数组的基本操作
  • 9.2.1 创建数组
  • 9.2.2 添加元素
  • 9.2.3 遍历数组
  • 9.2.4 更新元素
  • 9.2.5 删除元素
  • 9.3 数组的其他常用方法
  • 9.3.1 concat()方法和slice()方法
  • 9.3.2 reverse()方法和sort()方法
  • 9.3.3 find()方法和findIndex()方法
  • 9.3.4 map()方法
  • 9.3.5 reduce()方法
  • 9.3.6 every()方法和some()方法
  • 9.3.7 splice()方法
  • 9.4 多维数组
  • 9.5 实战案例:冒泡排序
  • 9.6 Array的静态方法
  • 9.6.1 Array.isArray()方法
  • 9.6.2 Array.from()方法
  • 9.6.3 Array.of()方法
  • 9.7 实战案例:取出数组的最大值和最小值
  • 9.8 本章小结
  • 第10章 BOM
  • 10.1 window对象
  • 10.1.1 全局作用域
  • 10.1.2 访问客户端对象
  • 10.1.3 使用系统对话框
  • 10.1.4 打开窗口和关闭窗口
  • 10.1.5 超时调用和间歇调用
  • 10.2 navigator对象
  • 10.2.1 navigator概念
  • 10.2.2 浏览器检测方法
  • 10.2.3 操作系统检测方法
  • 10.3 location对象
  • 10.4 history对象
  • 10.5 本章小结
  • 第11章 DOM
  • 11.1 DOM的版本
  • 11.2 节点
  • 11.2.1 节点关系
  • 11.2.2 节点种类
  • 11.2.3 节点类型、名称、值
  • 11.3 节点的操作之访问节点
  • 11.3.1 获取元素基础方法
  • 11.3.2 selectors API
  • 11.3.3 selectors API和传统方法的比较
  • 11.3.4 节点关系中访问元素节点的方法
  • 11.3.5 其他获取节点方法
  • 11.4 节点的操作之增、删、改操作
  • 11.4.1 创建节点
  • 11.4.2 创建文本节点
  • 11.4.3 插入节点
  • 11.4.4 复制节点
  • 11.4.5 删除节点
  • 11.4.6 替换节点
  • 11.5 属性节点
  • 11.5.1 属性分类
  • 11.5.2 传统属性操作
  • 11.5.3 HTML5自定义属性操作
  • 11.5.4 案例:字号变大
  • 11.6 文本节点
  • 11.6.1 innerHTML和innerText
  • 11.6.2 textContent
  • 11.7 脚本化CSS
  • 11.7.1 元素大小
  • 11.7.2 元素位置
  • 11.7.3 设置与获取元素样式
  • 11.7.4 元素的类名操作
  • 11.8 文档碎片节点
  • 11.9 本章小结
  • 第12章 DOM编程之事件
  • 12.1 DOM事件流
  • 12.1.1 事件冒泡
  • 12.1.2 事件捕获
  • 12.1.3 标准(混合)型
  • 12.2 绑定事件监听
  • 12.2.1 HTML事件监听绑定
  • 12.2.2 DOM0事件监听绑定
  • 12.2.3 DOM2与DOM3事件监听绑定
  • 12.2.4 IE事件监听绑定
  • 12.3 JavaScript常用事件
  • 12.3.1 获取焦点和失去焦点
  • 12.3.2 点击事件
  • 12.3.3 键盘事件
  • 12.3.4 表单事件
  • 12.3.5 鼠标事件
  • 12.3.6 滚动条事件
  • 12.3.7 加载事件
  • 12.3.8 滚轮事件
  • 12.4 event对象
  • 12.5 事件的三个特别处理
  • 12.5.1 停止事件冒泡
  • 12.5.2 阻止事件默认行为
  • 12.5.3 事件委托
  • 12.6 本章小结
  • 第13章 AJAX
  • 13.1 相关理解
  • 13.2 JSON
  • 13.2.1 JSON数据格式
  • 13.2.2 JSON对象
  • 13.3 XMLHttpRequest对象
  • 13.3.1 XMLHttpRequest对象介绍
  • 13.3.2 XMLHttpRequest level2
  • 13.3.3 发送请求相关操作
  • 13.3.4 处理响应相关操作
  • 13.3.5 进度事件
  • 13.3.6 请求超时和终止请求
  • 13.3.7 封装ajax()请求函数
  • 13.4 跨域
  • 13.4.1 JSONP解决跨域问题
  • 13.4.2 CORS解决跨域问题
  • 13.5 本章小结
  • 第14章 异步编程
  • 14.1 相关理解
  • 14.1.1 单线程与多线程
  • 14.1.2 同步与异步
  • 14.2 传统异步回调
  • 14.2.1 理解
  • 14.2.2 回调地狱问题
  • 14.3 异步Promise
  • 14.3.1 理解
  • 14.3.2 使用Promise
  • 14.3.3 Promise的链式调用
  • 14.3.4 Promise的静态方法
  • 14.4 事件循环机制
  • 14.4.1 图解事件循环的基本流程
  • 14.4.2 宏队列与微队列
  • 14.5 本章小结
  • 第15章 ES6的其他常用新特性
  • 15.1 ES6学习指南
  • 15.2 解构赋值
  • 15.2.1 对象解构
  • 15.2.2 数组解构
  • 15.3 对象的扩展
  • 15.3.1 Object.is()
  • 15.3.2 Object.assign()
  • 15.4 Symbol类型
  • 15.5 迭代器与for…of循环
  • 15.6 扩展运算符
  • 15.7 Set结构与Map结构
  • 15.7.1 Set
  • 15.7.2 Map
  • 15.8 Proxy与Reflect
  • 15.9 本章小结
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

电子工业出版社

电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。