模块化 js

176 阅读1分钟

模块化


非模块化时代

  • 全局变量污染
  • 依赖关系不明确

知识点


AMD

  • 异步模块规范
  • requirejs(待了解)
  • 全局定义define require函数
  • 依赖JS全自动异步加载
//main.js
require('./a.js',function(a){
	var date = new Date()
   a.printDate(date)
}

CommonJS

  • nodejs模块化规范,现在被大量用于前端
  • 前端开发依赖的插件和库都可以npm
  • 构建工具的被高度自动化
  • commonjs不会异步加载js,而是同步一次加载过来
  • 需要构建工具支持

AMD和CommomJS

  • 需要异步加载JS使用AMD

  • 使用npm以后建议使用CommonJS