现代JavaScript库开发:原理、技术与实战

现代JavaScript库开发:原理、技术与实战

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

本书旨在帮助前端开发者掌握现代JavaScript库的开发技术。

内容简介

开发JavaScript库是入门前端领域的重要一步。本书系统介绍了现代JavaScript库开发涉及的技术、原理和最佳实践,以及将库开源后如何做好维护工作。在最佳实战部分,本书选取了9个典型库作为案例,展示开发流程,代码清晰、完善。

本书既适合对现代JavaScript库开发及开源感兴趣的前端开发者阅读,也适合想要学习前端项目开发技术的初学者阅读。

作者简介

作者颜海镜,知名技术博主,微信公众号“颜海镜”作者。拥有十年以上开源经验,具有多年一线大厂从业经验,曾先后就职于金山、百度、美团等知名企业,负责前端开发工作。

章节目录

版权信息

内容简介

推荐序1

推荐序2

推荐语

前言

第1章 从零开发一个JavaScript库

1.1 如何开始

1.2 编写代码

1.3 本章小结

第2章 构建

2.1 模块化解析

2.1.1 什么是模块

2.1.2 原始模块

2.1.3 AMD

2.1.4 CommonJS

2.1.5 UMD

2.1.6 ES Module

2.2 技术体系解析

2.2.1 传统体系

2.2.2 Node.js体系

2.2.3 工具化体系

2.3 打包方案

2.3.1 选择打包工具

2.3.2 打包步骤

2.3.3 添加banner

2.3.4 按需加载

2.4 兼容方案

2.4.1 确定兼容环境

2.4.2 ECMAScript 5兼容方案

2.4.3 ECMAScript 2015兼容方案

2.5 完整方案

2.6 本章小结

第3章 测试

3.1 第一个单元测试

3.2 设计测试用例

3.2.1 设计思路

3.2.2 编写代码

3.3 验证测试覆盖率

3.3.1 代码覆盖率

3.3.2 源代码覆盖率

3.3.3 校验覆盖率

3.4 浏览器环境测试

3.4.1 模拟浏览器环境

3.4.2 真实浏览器测试

3.4.3 自动化测试

3.5 本章小结

第4章 开源

4.1 选择开源协议

4.2 完善文档

4.2.1 README

4.2.2 待办清单

4.2.3 变更日志

4.2.4 API文档

4.3 发布

4.3.1 发布到GitHub上

4.3.2 发布到npm上

4.3.3 下载安装包

4.4 统计数据

4.4.1 GitHub数据

4.4.2 npm数据

4.4.3 自定义数据

4.5 本章小结

第5章 维护

5.1 社区协作

5.1.1 社区反馈

5.1.2 社区协作

5.1.3 社区运营

5.2 规范先行

5.2.1 编辑器

5.2.2 格式化

5.2.3 代码Lint

5.2.4 提交信息

5.3 持续集成

5.3.1 GitHub Actions

5.3.2 CircleCI

5.3.3 Travis CI

5.4 分支模型

5.4.1 主分支

5.4.2 功能分支

5.4.3 故障分支

5.4.4 Pull request

5.4.5 标签与历史

5.5 本章小结

第6章 设计更好的JavaScript库

6.1 设计更好的函数

6.1.1 函数命名

6.1.2 参数个数

6.1.3 可选参数

6.1.4 返回值

6.2 提高健壮性

6.2.1 参数防御

6.2.2 副作用处理

6.2.3 异常捕获

6.3 解决浏览器兼容性问题

6.3.1 String

6.3.2 Array

6.3.3 Object

6.4 支持TypeScript

6.5 本章小结

第7章 安全防护

7.1 防护意外

7.1.1 最小功能设计

7.1.2 最小参数设计

7.1.3 冻结对象

7.2 避免原型入侵

7.2.1 面向对象基础知识

7.2.2 原型之路

7.2.3 原型入侵

7.3 原型污染事件

7.3.1 漏洞原因

7.3.2 详解原型污染

7.3.3 防范原型污染

7.3.4 JSON.parse补充

7.4 依赖的安全性问题

7.4.1 库的选择

7.4.2 正确区分依赖

7.4.3 版本问题

7.4.4 依赖过期

7.4.5 安全检查

7.5 本章小结

第8章 抽象标准库

8.1 类型判断

8.1.1 背景知识

8.1.2 抽象库

8.2 函数工具

8.2.1 once

8.2.2 curry

8.2.3 pipe

8.2.4 compose

8.3 数据拷贝

8.3.1 背景知识

8.3.2 最简单的深拷贝

8.3.3 一行代码的深拷贝

8.3.4 破解递归爆栈

8.3.5 破解循环引用

8.3.6 性能对比

8.4 相等性判断

8.4.1 背景知识

8.4.2 抽象库

8.5 参数扩展

8.5.1 背景知识

8.5.2 抽象库

8.6 深层数据

8.6.1 背景知识

8.6.2 抽象库

8.7 本章小结

第9章 命令行工具

9.1 系统设计

9.2 标准命令行工具

9.3 交互界面

9.4 初始化功能

9.4.1 代码架构

9.4.2 公共逻辑

9.4.3 模块设计

9.5 命令行颜色

9.6 进度条

9.7 发布

9.8 本章小结

第10章 工具库实战

10.1 问题背景

10.2 代码实现

10.2.1 字符串操作

10.2.2 数组操作

10.2.3 对象操作

10.2.4 URL参数处理

10.3 搭建文档

10.4 ESLint插件

10.4.1 type-typeof-limit

10.4.2 type-instanceof-limit

10.4.3 no-same-function

10.4.4 recommended

10.4.5 发布

10.5 数据统计

10.5.1 统计接入项目

10.5.2 下载量

10.5.3 包和函数被引用的次数

10.6 本章小结

第11章 前端模板库实战

11.1 系统搭建

11.1.1 背景知识

11.1.2 搭建项目

11.2 解析器

11.3 即时编译器

11.4 预编译器

11.5 webpack插件

11.6 VS Code插件

11.7 发布

11.8 本章小结

第12章 未来之路

12.1 全景图

12.1.1 知识全景图

12.1.2 技术全景图

12.2 下一代技术

12.2.1 TypeScript

12.2.2 Deno

12.2.3 SWC

12.2.4 esbuild

12.2.5 Vite

12.3 本章小结

现代JavaScript库开发:原理、技术与实战是2023年由电子工业出版社出版,作者侯策。

得书感谢您对《现代JavaScript库开发:原理、技术与实战》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
SpringSecurity原理与实战 电子书
本书主要介绍基于Spring Security构建系统安全性的技术体系和工程实践。
JavaScript前端开发案例教程 电子书
JavaScript是一种广泛应用于Web前端开发的脚本语言,具有简单、易学、易用的特点,用JavaScript开发网页可以增强网页的互动性,为用户提供实时的、动态的交互体验。本书共分为12章,内容包括JavaScript快速入门、基本语法、数组、函数、对象、BOM、DOM、事件、正则表达式、Ajax、jQuery和网页2048小游戏。为了加深初学者对知识的领悟,本书在确保知识讲解系统、全面的基础
SpringBoot开发与测试实战 电子书
一本关于Spring Boot应用程序开发和测试的入门图书。
Angular开发入门与实战 电子书
深入浅出学Angular,实战驱动,快速提升开发实力。
MySQL数据库应用技术及实战 电子书
本书针对开发零基础的人群,采用案例或任务驱动的方式,由入门到精通,采用边讲解边练习的方式,使读者感受到学习开发原来如此容易。本书中的数据库技术主要包括MySQL数据库、数据操作、高级查询、索引及数据恢复备份、MySQL数据库优化等方面的知识。通过本书,读者可以实现对MySQL数据库的使用和开发。