现代JavaScript开发

现代JavaScript开发

开发

  • 代码的模块化,方便维护和复用。这些模块化可能是我们自己使用的模块也有可能第三方包;
  • 第三方包有都可以从npm中下载到(包含开源包,以便我们自己的代码中包含第三方代码,比如react、jQuery,leaflet等等,也包含帮助我们构建应用程序的开发工具,例如实时服务器、Parcel、Babel、vite等等);

构建过程

  • 通过构建工具将所有的依赖整合成一个捆绑包,也就是合并成一个文件,这个过程也可以去除或者忽略一些你没有被使用的代码,以便于浏览器加载;
  • 这类的工具有很多,例如Webpack、Rollup、Vite、Pracel;
  • 之后也可能会使用到Babel,它的作用是
    • 转译现代 JavaScript: 将现代 JavaScript 特性(如 ES6+ 的箭头函数、可选链等)转译为旧版本(如 ES5)以兼容老旧浏览器。
    • 支持 Polyfill: 使用工具(如 core-js)填充不支持的全局功能(如 Promise)。
    • 语法降级: 将浏览器尚未支持的 JavaScript 提案(如装饰器、私有字段)转译为兼容代码。
  • 最终就会形成JavaScript捆绑包,用于生产服务器的部署;
相关推荐
Ro Jace13 分钟前
计算机专业基础教材
java·开发语言
代码游侠29 分钟前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
devmoon38 分钟前
运行时(Runtime)是什么?为什么 Polkadot 的 Runtime 可以被“像搭积木一样”定制
开发语言·区块链·智能合约·polkadot·runtmie
时艰.39 分钟前
Java 并发编程 — 并发容器 + CPU 缓存 + Disruptor
java·开发语言·缓存
忆~遂愿1 小时前
GE 引擎进阶:依赖图的原子性管理与异构算子协作调度
java·开发语言·人工智能
沐知全栈开发1 小时前
API 类别 - 交互
开发语言
人道领域1 小时前
SSM框架从入门到入土(AOP面向切面编程)
java·开发语言
铅笔侠_小龙虾1 小时前
Flutter 实战: 计算器
开发语言·javascript·flutter
2的n次方_2 小时前
Runtime 执行提交机制:NPU 硬件队列的管理与任务原子化下发
c语言·开发语言
大模型玩家七七2 小时前
梯度累积真的省显存吗?它换走的是什么成本
java·javascript·数据库·人工智能·深度学习