前端模块化介绍

前端模块化实现

1)CommonJS

	CommonJS 是一个服务器端的同步模块化规范
	实现者:Node.js
//a.js
module.exports = {
 	a:function(){}
 	b:'xxx'
}

加载方式:

//b.js
var m = require('./a');
m.a();

2) AMD

	AMD 就是异步模块定义规范,是一个客户端的JS模块化规范。
	具体说就是模块必须采用特定的 define()  函数来定义。
	实现者:require.js
	假定现在有一个 math.js 文件,它定义了一个 math 模块。写法如下:
//math.js
define(function () {
    var add = function (x, y) {
        return x + y;
    };
    return {
        add: add
    }
})

加载方法如下:

//main.js
require(['math'],function(math){
    alert(math.add(1,1))
})

如果这个模块还依赖其他模块,那么 define() 函数的第一个参数必须是一个数组,指明该模块的依赖性。

define(['myLib'], function (myLib) {
    function foo() {
        myLib.doSomething();
    }
    return {
        foo: foo
    }
})

当require() 函数加载上面这个模块的时候,就会先加载 myLib.js 文件。

3) CMD

	CMD 是国内的程序员提出的通用模块定义,可用于客户端,也容易转换成服务器端
	实现者:sea.js

4) ES6 的模块化

	w3c 官方提出的新一代JS规范,包含了模块化规范语法
	实现者:Babel
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值