Js忍者秘籍-代码模块化

    技术2025-11-09  5

    1.模块化的好处

    小的、组织良好的代码远比庞大的代码更容易理解和维护。优化程序结构和组织方式的一种方式是将代码拆分成小的、松散的片段或模块。

    2.ES6之前的实现

    2.1 模块模式

    在E6之前,没有内置的模块,开发者们不得不创造性地发挥JS现有的特性,最流行的方式之一是通过立即执行函数的闭包实现模块。

    使用立即执行函数创建定义模块变量的闭包,从外部作用域无法访问这些变量。使用闭包可以使模块变量保持活跃。最流行的是模块模式,通常采用立即执行函数,并返回一个新对象作为模块的公共接口。

    2.2 AMD

    提供define函数定义模块,可定义依赖和工厂函数(初始化) 在浏览器端使用 可以自动解决依赖,无需考虑引用顺序异步加载、避免阻塞同一个文件定义多个模块

    2.3 commonJS

    语法简单,模块只需定义module.export属性,引用也只需require函数是Node.js的默认模块模式,在服务端流行可以同步加载一个文件为一个模块

    3.ES6实现

    ES6结合了AMD和commonJS的特点,语法如commonJS简单,并提供AMD类似的异步加载机制。

    ES6模块基于文件,一个文件为一个模块通过关键字export导出标识符在其他模块通过import引入标识符模块可以使用默认导出,使用export default导出整个模块export与import都可以通过关键字as使用别名
    Processed: 0.020, SQL: 9