展开全部

主编推荐语

本书旨在帮助前端开发者掌握现代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 本章小结
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

电子工业出版社

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