- ISBN:9787302637905
- 装帧:平装-胶订
- 册数:暂无
- 重量:暂无
- 开本:其他
- 页数:714
- 出版时间:2023-11-01
- 条形码:9787302637905 ; 978-7-302-63790-5
本书特色
以JavaScript基础入门起,以静态页面开发和工程化开发两个方向,介绍了从脚本语言,到工程化项目构建的完整历程。
集合基础入门、文档大全及案例开发三位一体,既包括详细的基础知识介绍,又提供了丰富的实际项目和代码案例,包括详细的项目开发步骤,每个代码片段都有详细的注释标注和对应的操作说明。
内容简介
本书系统地介绍了JavaScript编程基础、编程思想、浏览器应用开发、服务器端应用开发、类型约束器、工程化开发、网络接近及简单的数据结构和算法。 全书共10章:第1章为JavaScript入门介绍,第2章为JavaScript面向对象编程,第3章为JavaScript的DOM和BOM,第4章为ECMAScript规范,第5章为JavaScript异步编程,第6章为JavaScript模块化编程,第7章为NPM包管理器攻略,第8章为基于类型约束器的JavaScript,第9章为网络安全与协议,第10章为前端常用的数据结构与算法。 书中包含大量应用示例,从基础入门到进阶开发*终渗透到原理和实现。书中的开发示例基于VS Code开发工具和Chrome浏览器实现,书中从JavaScript基础到JavaScript的工程化项目开发,均使用完整的代码案例和中文注释说明,提供了图文并茂的流程描述和完整的源代码案例支持。 本书可作为Web前端初学者在具备一定JavaScript基础后进一步提升JavaScript编程思想的进阶书籍,也可以作为初级前端开发工程师或非科班学习前端的学生进行科班知识的补充书籍。
目录
本书源代码
第1章锻体篇——认识JavaScript编程语言 1.1开启修炼之路 1.1.1修炼与编程的共同点 1.1.2JavaScript介绍 1.2JavaScript入门 1.2.1运行环境介绍 1.2.2Chrome Devtools介绍 1.3变量和数据类型 1.3.1变量的声明 1.3.2数据类型的划分 1.3.3基本类型与引用类型 1.4常用运算符 1.4.1算术运算符 1.4.2赋值运算符与字符串运算符 1.4.3比较运算符 1.4.4条件运算符 1.4.5逻辑运算符 1.4.6位运算符 1.5常用流程结构 1.5.1选择结构 1.5.2循环结构 1.5.3初探JSON对象和数组对象及其遍历方式 1.5.4异常处理 1.6JavaScript函数介绍 1.6.1函数的结构和用途 1.6.2变量与作用域 1.6.3闭包与作用域链 1.6.4函数的其他使用场景
第2章练气篇——JavaScript面向对象编程 2.1面向对象入门 2.1.1类与对象 2.1.2对象实例化应用 2.1.3原型对象prototype 2.1.4原型链与继承 2.1.5浅复制与深复制 2.2JavaScript内置对象 2.2.1Array对象 2.2.2Boolean对象 2.2.3Date对象 2.2.4Math对象 2.2.5Number对象 2.2.6String对象 2.2.7RegExp对象 2.3浏览器对象 2.3.1window对象 2.3.2navigator对象 2.3.3location对象 2.3.4存储对象 2.3.5定时器 2.4Object对象详细讲解 2.4.1Object.assign()方法 2.4.2Object.is()方法 2.4.3Object.values()方法 2.4.4Object.entries()方法 2.4.5Object.fromEntries()方法 2.4.6Object.defineProperty()方法 2.5严格模式介绍 2.5.1调用严格模式 2.5.2严格模式中的变化 第3章筑基篇——DOM 3.1DOM基础介绍 3.1.1获取HTML节点对象 3.1.2改变HTML属性和内容 3.1.3改变CSS样式 3.1.4DOM对象的增删操作 3.1.5DOM操作练习 3.2DOM事件绑定 3.2.1事件系统介绍 3.2.2常用事件绑定方式 3.2.3事件捕获和事件冒泡 3.2.4事件传播的原理与事件的灵活运用 3.3防抖和节流 3.3.1debounce防抖 3.3.2throttle节流 3.4HTMLCollection对象与NodeList对象 3.4.1HTMLCollection对象 3.4.2NodeList对象 3.5DOM操作综合实战 3.5.1开发一个登录页面 3.5.2登录页面的表单校验及背景图片的定时切换 3.5.3常规管理系统首页搭建 3.5.4访问权限控制和登录过期 3.5.5Cookie对象简介 第4章结丹篇——ECMAScript 6 4.1ECMA介绍 4.1.1ECMA组织与ECMA262 4.1.2ECMAScript发展史 4.2新的声明方式与作用域规则 4.2.1新的声明符号let 4.2.2新的声明符号const 4.3箭头函数与普通函数 4.3.1箭头函数介绍 4.3.2箭头函数与function函数的区别 4.4class对象 4.4.1class对象与function对象的区别 4.4.2class对象的继承 4.4.3属性、静态属性及私有属性 4.5ES6 的其他新特性 4.5.1数组的解构赋值 4.5.2对象的解构赋值 4.5.3模板字符串 4.5.4Set与Map 4.6Proxy与Reflect 4.6.1Proxy对象 4.6.2Reflect对象 第5章元婴篇——JavaScript异步编程 5.1初识异步编程 5.1.1什么是同步和异步 5.1.2深入探索同步和异步 5.1.3异步与多线程的区别 5.2初识异步编程 5.2.1浏览器的线程组成 5.2.2线程间的工作关系 5.2.3JavaScript的运行模型 5.3EventLoop与异步任务队列 5.3.1异步任务的去向与EventLoop的工作原理 5.3.2关于函数执行栈 5.3.3递归和栈溢出 5.4异步流程控制 5.4.1宏任务与微任务 5.4.2流程控制的银弹——Promise 5.4.3回调函数与Promise对象 5.4.4Promise对象应用详细讲解 5.4.5链式调用及其他常用API 5.4.6异步代码同步化 5.5手撕Promise对象 5.5.1定义一个Promise对象 5.5.2实现then()的回调函数 5.5.3实现catch()的完整功能 5.5.4其他常用功能的实现 第6章化神篇——JavaScript模块化编程 6.1JavaScript模块化发展历程 6.1.1无模块化时代的依赖管理 6.1.2JavaScript模块化的出现及发展 6.2Node.js及其模块系统 6.2.1Node.js的快速上手 6.2.2Node.js介绍 6.2.3Node.js的常用API 6.2.4NPM初探 6.2.5基于Node.js开发静态资源服务器 6.3工程化利器Webpack 6.3.1Webpack入门 6.3.2认识Webpack的Loader 6.3.3通过babelloader学习Loader的使用 6.3.4Webpack中的Plugin 6.3.5Webpack项目的样式处理 6.4基于Webpack的前端脚手架搭建 6.4.1创建一个区分开发环境与生产环境的项目 6.4.2构建生产环境与开发环境 6.4.3集成babel与CSS预处理器 6.4.4项目 配置项 6.4.5集成个性化功能 第7章还虚篇——NPM包管理器全攻略 7.1包管理器NPM介绍 7.1.1NPM的基本使用 7.1.2镜像网址管理 7.1.3学习npm config命令 7.2企业级NPM包管理器实战 7.2.1初始化工程化项目 7.2.2依赖管理介绍
7.2.3NPM的依赖加载规则 7.2.4bin属性的作用 7.2.5scripts属性的作用 7.2.6NPM的发布配置 7.3本地NPM私服搭建 7.3.1为什么需要NPM私服 7.3.2搭建本地NPM私服 7.4仿真nrm工具 7.4.1创建pnrm项目结构 7.4.2仿真实现nrm包的功能 7.4.3编写测试用例 第8章合道篇——基于类型约束器的JavaScript 8.1静态类型的JavaScript 8.1.1什么是静态类型 8.1.2Flow的出现 8.1.3什么是TypeScript
8.1.4TypeScript的环境搭建 8.2TypeScript语法入门 8.2.1基本类型与引用类型 8.2.2函数、interface与范型 8.3TypeScript高级应用 8.3.1装饰器 8.3.2模块和命名空间 8.3.3*.d.ts文件的使用 8.4基于TypeScript的前端项目实战 8.4.1使用Vite初始化Vue 3 TypeScript项目 8.4.2集成ElementPlus框架 8.4.3集成路由功能 8.4.4集成状态管理器Pinia 8.5基于TypeScript的前后端分离项目 8.5.1基于NestJS的服务器端项目搭建 8.5.2基于Vue 3 ElementPlus搭建前端登录页面 8.5.3开发服务器端登录接口 8.5.4实现完整的登录功能 第9章大乘篇——网络安全与协议 9.1客户端脚本攻击 9.1.1跨站脚本攻击XSS 9.1.2XSS攻击的案例1——MVC注入 9.1.3XSS攻击的案例2——超链接与图片注入 9.1.4XSS的攻防思想 9.2CSRF和单击劫持 9.2.1CSRF漏洞 9.2.2单击劫持 9.3常见服务器端攻击 9.3.1SQL注入攻击 9.3.2文件上传漏洞 9.4DDoS攻击详细讲解 9.4.1DDoS简介 9.4.2DDoS攻击的防御策略 9.4.3资源耗尽攻击 9.5前端常见网络协议常识 9.5.1从输入域名到网页展示经历了什么样的过程 9.5.2HTTP的发展历程 9.5.3HTTP缓存 第10章归初篇——前端常用的数据结构与算法入门 10.1简单数据结构示例 10.1.1数组和链表 10.1.2二叉树结构及其遍历思想 10.1.3递归与循环实现二叉树的遍历 10.1.4二叉查找树 10.2几种常见的插入排序算法 10.2.1图解直接插入排序 10.2.2图解二分插入排序 10.2.3图解希尔排序 10.3图解常用经典排序 10.3.1图解快速排序 10.3.2图解归并排序 10.3.3图解堆排序 10.4实现HTML语法解释器 10.4.1回顾HTML基础 10.4.2揭秘HTML解释器 10.4.3从词法分析到DOM树的构建 10.4.4家庭作业——反向生成HTML
作者简介
张云鹏,前中国联通(黑龙江)产业互联网公司前端技术专家。十余年软件研发经验,精通前后端技术。带领百人技术团队专注于企业内部前端框架研发,前端高性能渲染,前端自动化部署,以及前端核心架构建设。精通Web应用开发,移动App开发以及桌面程序开发。现IT教育行业从业者,致力于IT领域的知识分享和开源贡献
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥31.9¥65.0 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥77.4¥109.0 -
UG NX 12.0数控编程
¥24.8¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
Go 语言运维开发 : Kubernetes 项目实战
¥48.2¥79.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥84.5¥119.0