一、模块化简介
随着网站逐渐变成"互联网应用程序",嵌入网页的Javascript代码越来越庞大,越来越复杂。 我们希望的是自己的代码条理清晰,可读性高,这就需要我们像书写后端代码那样,将javascript的代码模块化,通过js文件之间的互相调用来完成一定的功能。
但是,js不像java,没有类、包等概念,只是一个个单独的js文件,每一个文件都是一个独立的模块,有自己的作用域。在一个文件里面定义的变量、函数、类,都是私有的,对其他文件不可见。所以想要实现模块化操作,必须经过一下两个步骤:
1、将被调用文件中的内容暴露出去
2、在调用文件中引入被调用文件
为了统一规范上述两种操作,JS提供了两种方法:
CommonJS模块化规范
ES6模块化规范
下面分别就两种规划的使用方式进行说明:
二、CommonJS模块化规范
CommonJS使用 exports 和require 来导出、导入模块。
1、创建被引入文件01.js
// 定义成员:
const sum = function(a,b){
return parseInt(a) + parseInt(b)
}
const subtract = function(a,b){
return parseInt(a) - parseInt(b)
}
const multiply = function(a,b){
return parseInt(a) * parseInt(b)
}
const divide = function(a,b){
return parseInt(a) / parseInt(b)
}
// 暴露成员:
module.exports = {
sum,
subtract,
multiply,
divide
}
或者写成:
// 定义成员:
exports.sum = function(a,b){
return