Skip to content
Go back

模块化

Edit page

模块化

简介

ES Modules (ESM) 是 JavaScript 官方的标准化模块系统。提供了模块化的方式组织变量和函数。

背景

JavaScript 原生的变量管理方式是基于作用域的,不同的作用域之间需要共享变量,需要提升变量的作用域,比如使用 JQuery 组件时,一定要保证组件被导入之前导入 JQuery 否则会出现未定义变量使用的问题。这种依赖是不透明的,面对复杂的组件依赖关系,导入顺序让人头疼。其次,由于变量在全局作用域中,意味着可以被随处改变,有可能被恶意代码攻击,或者被意外改变出现无法预期的问题。最初的脚本小而简单,这些问题不会显露,但随着语言的发展,代码变得越来越复杂,问题便暴露了。

为了解决这个问题社区用了很多方法来把代码组织成模块,历史上出现过很多,下面列举一些:

2015 年提出的 ES6 标准中,提出了 语言级的模块系统,现已被所有主流浏览器和 Node.js 支持。


Edit page
Share this post on:

Previous Post
入门
Next Post
maven入门