ES6之路之模块详解
简介 何为模块 一个模块只不过是一个写在文件中的 JavaScript 代码块。 模块中的函数或变量不可用,除非模块文件导出它们。 简单地说,这些模块可以帮助你在你的模块中编写代码,并且只公开应该被你的代码的其他部分访问的代码部分。 为什么要使用模块 增加可维护性:由于每个模块都是独立的,每个人写的代码是不会相互影响的,在维护代码的时候很好排查是哪个模块出错。 可复用性:在日常的开发中,特别是大点的项目,代码的可复用性就更重要了,也许你会用复制粘贴的形式,但是直接一个 import 命令就可以搞定,岂不快哉。 避免命名污染:在 javascript 脚本中,所有的 js 文件的顶级作用域创建的变量,会被添加到共享的全局作用域,这就会导致不同的人开发的代码可能会有相同的变量名,导致变量名污染。 如何使用 导出模块 导出模块所用的命令是 export。 前面也提到一个模块就是一个 javascript 文件,在这个模块中定义的变量,外部是无法获取到的,只有通过 export 导出的变量其他模块才可以用 最简单的导出方式就是在声明的变量、函数、类前面加一个 export // export1.js // 导出变量 export let name = '桃翁'; // 导出函数 export function print() { console.log("欢迎关注公众号:前端桃园"); } // 导出类 export class Person { constructor(name) { this.name = name; } } // 私有函数 function privateFunction () { console.log('我是私有函数,外部访问不了我'); } 注意: 被导出的函数或者类,都必须要有名称,意思就是说不能用这种方式导出匿名函数或者匿名类。 privateFunction 函数,没有加 export 命令,被当做这个模块的私有变量,其他模块是访问不到的。 除了上面那种导出方式,还有另外一种...