CommonJs介绍及跟ES6模块化的区别

CommonJs介绍

CommonJs模块化是node中的第三方的规范

CommonJS模块规范主要分为四部分:定义模块、暴露(导出)模块、引入模块,模块调用。

name.js

> // 定义模块
const name={
    aname:"zybq",
    sayname(){
        console.log(this.aname)
    }
}
const age={
    age:100
}
//暴露模块
module.exports={
    name,
    age
}

app.js

// 模块引用
const {name,age}=require("./name")//引入自定义包
//模块调用
name.sayname()
console.log(age.age)

引入使用:

require("path")

导出模块使用

exports.name 或 module.exports.name 或 module.exports={} 

什么是模块化

模块化就是将变量和函数 放入不同的文件中

模块的作用域是私有的 内部定义的代码只能在当前文件中使用 外部使用那么需要将此模块暴露出去

模块化的好处

减少全局变量 避免变量名和函数命名冲突

提高代码的复用性和维护性

CommonJs模块化和ES6模块化的区别

CommonJS 模块总是在运行时加载
ES6 模块编译时执行

CommonJS 输出的是值的拷贝
ES6 模块输出的是值的引用,输出接口动态绑定

CommonJS 模块使用require()引入和module.exports导出
ES6 模块使用import引入和export导出。

commonjs 在使用模块的时候是运行时同步加载的 拷贝模块中的对象
ES6 模块的import命令是异步加载,有一个独立的模块依赖的解析阶段。

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码上流星&洒下星辰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值