展开全部

主编推荐语

全面讲解JavaScript基础语法及ES6~ES2021新特性。

内容简介

随着JavaScript逐渐成为通用的编程语言,它在软件开发中的地位越来越高,已经不再只是给HTML编写交互的客户端脚本语言了,而是可以胜任前端、后端、大数据和机器学习等应用的全面语言。本书对ES6到ES2021的新特性作了较为详尽和深入的介绍,并且全书的语法可以适应各端开发人员所需。

本书共14章,涵盖了JavaScript的发展历史、运行环境、基础语法、运算符、数组、函数式编程、面向对象基础、原型链、异步编程、EventLoop、模块化、迭代器和生成器、Symbol、Reflect和Proxy的概念和使用方法。

目录

  • 版权信息
  • 内容简介
  • 作者简介
  • 前言
  • 第1章 简介
  • 1.1 发展历史
  • 1.2 ECMAScript提案流程
  • 1.3 运行JavaScript
  • 1.4 浏览器环境
  • 1.5 Node.js环境
  • 1.6 开发工具
  • 1.7 基础语法概览
  • 1.7.1 变量与数据类型
  • 1.7.2 运算符
  • 1.7.3 流程控制
  • 1.7.4 函数
  • 1.8 严格模式
  • 1.9 小结
  • 第2章 基础知识
  • 2.1 程序结构
  • 2.2 变量
  • 2.2.1 定义变量
  • 2.2.2 变量的命名规范
  • 2.3 常量
  • 2.3.1 定义常量
  • 2.3.2 常量的命名规范
  • 2.4 数据类型
  • 2.4.1 typeof
  • 2.4.2 Number类型
  • 2.4.3 Boolean类型
  • 2.4.4 String类型
  • 2.4.5 Null与Undefined类型
  • 2.4.6 Object类型
  • 2.4.7 Symbol类型
  • 2.4.8 BigInt类型
  • 2.4.9 Array类型
  • 2.4.10 基本类型的特点
  • 2.5 数据类型转换
  • 2.5.1 隐式类型转换
  • 2.5.2 显式类型转换
  • 2.6 小结
  • 第3章 运算符
  • 3.1 赋值运算符
  • 3.2 数学运算符
  • 3.2.1 一元数学运算符
  • 3.2.2 二元数学运算符
  • 3.2.3 计算顺序与优先级
  • 3.3 比较运算符
  • 3.4 逻辑运算符
  • 3.5 Nullish Coalescing运算符
  • 3.6 三目运算符
  • 3.7 位运算符
  • 3.7.1 与运算
  • 3.7.2 或运算
  • 3.7.3 异或运算
  • 3.7.4 取反运算
  • 3.7.5 左移运算
  • 3.7.6 右移运算
  • 3.7.7 补零右移运算
  • 3.8 组合运算符
  • 3.9 其他运算符
  • 3.10 优先级表
  • 3.11 小结
  • 第4章 流程控制
  • 4.1 语句
  • 4.2 if...else语句
  • 4.3 if...else if...else语句
  • 4.4 switch...case语句
  • 4.5 while语句
  • 4.6 do...while语句
  • 4.7 for语句
  • 4.8 break和continue语句
  • 4.9 label语句
  • 4.10 小结
  • 第5章 函数
  • 5.1 声明函数
  • 5.2 调用函数
  • 5.3 函数表达式
  • 5.4 箭头函数
  • 5.5 可选与默认参数
  • 5.6 可变长度参数
  • 5.6.1 arguments
  • 5.6.2 rest运算符
  • 5.7 回调函数
  • 5.8 作用域
  • 5.8.1 全局作用域
  • 5.8.2 局部作用域
  • 5.8.3 提升机制
  • 5.8.4 临时隔离区
  • 5.9 闭包
  • 5.10 递归
  • 5.11 高阶函数
  • 5.12 柯里化
  • 5.13 Memoization
  • 5.14 纯函数
  • 5.15 小结
  • 第6章 数组
  • 6.1 创建数组
  • 6.2 访问数组
  • 6.3 修改元素
  • 6.4 删除元素
  • 6.5 栈和队列模式
  • 6.6 数组遍历
  • 6.7 数组过滤和测试
  • 6.8 数组排序
  • 6.9 数组连接
  • 6.10 数组裁切
  • 6.11 搜索元素
  • 6.12 数组与字符串
  • 6.13 数组填充
  • 6.14 数组复制
  • 6.15 扁平化
  • 6.16 解构赋值
  • 6.17 扩展语法
  • 6.18 多维数组
  • 6.19 小结
  • 第7章 对象
  • 7.1 创建对象
  • 7.1.1 简化属性
  • 7.1.2 计算属性名
  • 7.2 访问与添加对象属性
  • 7.3 遍历对象属性
  • 7.4 删除对象属性
  • 7.5 getters和setters
  • 7.6 属性描述符
  • 7.6.1 配置属性描述符
  • 7.6.2 配置多个属性描述符
  • 7.6.3 获取属性描述符
  • 7.6.4 不可扩展对象
  • 7.7 原型
  • 7.7.1 获取原型对象
  • 7.7.2 原型链
  • 7.7.3 Object.create()
  • 7.8 构造函数
  • 7.8.1 定义
  • 7.8.2 this
  • 7.9 toString()和valueOf()
  • 7.10 call()、apply()与bind()
  • 7.10.1 call()
  • 7.10.2 apply()
  • 7.10.3 bind()
  • 7.11 对象复制
  • 7.12 解构赋值与rest运算符(对象)
  • 7.13 with语句
  • 7.14 值传递与引用传递
  • 7.15 小结
  • 第8章 面向对象基础
  • 8.1 简介
  • 8.2 创建类
  • 8.2.1 定义构造函数
  • 8.2.2 实例化对象
  • 8.2.3 添加行为
  • 8.2.4 注意事项
  • 8.3 实现继承
  • 8.4 抽象类
  • 8.5 成员变量
  • 8.6 静态成员
  • 8.7 小结
  • 第9章 字符串与正则表达式
  • 9.1 字符串介绍
  • 9.2 字符串遍历
  • 9.3 字符串操作
  • 9.3.1 拼接
  • 9.3.2 裁切
  • 9.3.3 搜索
  • 9.3.4 分割
  • 9.3.5 其他操作
  • 9.4 模板字符串
  • 9.5 正则表达式介绍
  • 9.6 正则表达式语法
  • 9.6.1 特殊字符匹配
  • 9.6.2 匹配次数
  • 9.6.3 区间、逻辑和界定符
  • 9.6.4 分组
  • 9.7 字符串中的正则
  • 9.8 RegExp对象
  • 9.9 常见的正则表达式
  • 9.10 小结
  • 第10章 内置对象
  • 10.1 基本类型包装对象
  • 10.2 Math
  • 10.3 Date
  • 10.3.1 获取日期
  • 10.3.2 修改日期
  • 10.3.3 解析日期
  • 10.3.4 日期比较
  • 10.4 JSON
  • 10.4.1 序列化
  • 10.4.2 反序列化
  • 10.5 Set
  • 10.6 Map
  • 10.7 迭代器、可迭代对象和生成器
  • 10.7.1 迭代器
  • 10.7.2 可迭代对象
  • 10.7.3 生成器与生成器函数
  • 10.8 TypedArray
  • 10.8.1 创建类型数组
  • 10.8.2 属性和方法
  • 10.9 Symbol
  • 10.9.1 Symbol.match
  • 10.9.2 Symbol.toStringTag
  • 10.9.3 Symbol.isConcatSpreadable
  • 10.9.4 Symbol.toPrimitive
  • 10.9.5 Symbol.hasInstance
  • 10.9.6 Symbol.species
  • 10.10 Console
  • 10.10.1 调试
  • 10.10.2 显示
  • 10.10.3 记录
  • 10.11 Reflect
  • 10.12 Proxy
  • 10.12.1 处理对象
  • 10.12.2 不变性
  • 10.12.3 可回收代理
  • 10.13 小结
  • 第11章 异常处理
  • 11.1 捕获异常
  • 11.2 throw抛出异常
  • 11.3 Error对象
  • 11.4 自定义异常
  • 11.5 finally
  • 11.6 捕获多个异常
  • 11.7 小结
  • 第12章 异步编程
  • 12.1 setTimeout()
  • 12.2 setInterval()
  • 12.3 Promise
  • 12.3.1 创建Promise
  • 12.3.2 链式调用
  • 12.3.3 处理异常
  • 12.3.4 执行多个Promise
  • 12.4 async/await
  • 12.4.1 定义异步函数
  • 12.4.2 使用await
  • 12.4.3 处理异常
  • 12.5 异步迭代
  • 12.6 Event Loop
  • 12.6.1 调用栈
  • 12.6.2 Event Loop
  • 12.7 小结
  • 第13章 模块化
  • 13.1 实现模块化的方式
  • 13.2 模块化配置
  • 13.2.1 导出模块
  • 13.2.2 导入模块
  • 13.2.3 默认导出
  • 13.2.4 别名导入
  • 13.2.5 再导出
  • 13.2.6 动态导入
  • 13.3 Node.js原生模块管理
  • 13.4 小结
  • 第14章 案例与总结
  • 14.1 面向对象设计示例:线上服装商城
  • 14.1.1 需求
  • 14.1.2 Clothing衣服类
  • 14.1.3 Store商城类
  • 14.1.4 User用户类
  • 14.1.5 Address地址类
  • 14.1.6 Cart购物车类
  • 14.1.7 Order订单类
  • 14.1.8 示例
  • 14.2 函数式编程示例:扩展数组API
  • 14.2.1 唯一元素
  • 14.2.2 交集
  • 14.2.3 并集
  • 14.2.4 差集
  • 14.2.5 对称差集
  • 14.2.6 求和
  • 14.2.7 平均值
  • 14.2.8 范围
  • 14.2.9 分割
  • 14.2.10 频次
  • 14.2.11 导出
  • 14.2.12 调用示例
  • 14.3 下一步规划
  • 14.3.1 前端
  • 14.3.2 后端
  • 14.3.3 特定领域
  • 14.4 写在最后
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

清华大学出版社

清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。