es6模块与 commonJS规范的区别
es6 {
export : '可以输出多个,输出方式为 {}' ,
export default : ' 只能输出一个 ,可以与export 同时输出,但是不建议这么做',
解析阶段确定对外输出的接口,解析阶段生成接口,
模块不是对象,加载的不是对象,
可以单独加载其中的某个接口(方法),
静态分析,动态引用,输出的是值的引用,值改变,引用也改变,即原来模块中的值改变则该加载的值也改变,
this 指向undefined
}
commonJS {
module.exports = ... : '只能输出一个,且后面的会覆盖上面的' ,
exports. ... : ' 可以输出多个',
运行阶段确定接口,运行时才会加载模块,
模块是对象,加载的是该对象,
加载的是整个模块,即将所有的接口全部加载进来,
输出是值的拷贝,即原来模块中的值改变不会影响已经加载的该值,
this 指向当前模块
}
转载于:https://www.cnblogs.com/weblinda/p/6740833.html
es6模块与 commonJS规范的区别相关推荐
- ES6模块与commonJS模块的差异
参考: 前端模块化 ES6 在语言标准的层面上,实现了模块功能,而且实现得相当简单,旨在成为浏览器和服务器通用的模块解决方案. 其模块功能主要由两个命令构成:export和import.export命 ...
- javascript --- ES6模块与CommonJS模块的差异
CommonJS模块是运行时加载,ES6模块是编译时输出接口 是因为CommonJS加载的是一个对象(module.exports属性),该对象只有在脚本运行结束时才会生成.而ES6模块不是对象,它的 ...
- ES6模块体系及DDN区块链设计开发规范
ES6模块体系及DDN开发规范 概述 得益于 ES6 和 TS的模块体系,DDN区块链可以快速拆解和迭代.没有这些模块化的基础,我们后面所有的工作都会受阻,可插拔.可视化.可配置等功能就成了一句空话, ...
- CommonJS规范(转)
概述 CommonJS是服务器端模块的规范,Node.js采用了这个规范. 根据CommonJS规范,一个单独的文件就是一个模块.加载模块使用require方法,该方法读取一个文件并执行,最后返回文件 ...
- es6 --- 模块
function foo(){var something = 'cool';var another = [1, 2, 3];function doSomething() {console.log( s ...
- 为什么ES模块比CommonJS更好?
ES6 模块与 CommonJS 模块的差异 1.CommonJS 模块输出的是一个值的拷贝,ES6 模块输出的是值的引用.2.CommonJS 模块是运行时加载,ES6 模块是编译时输出接口. Co ...
- es6 混合commjs_详谈commonjs模块与es6模块的区别
到目前为止,已经实习了3个月的时间了.最近在面试,在面试题里面有题目涉及到模块循环加载的知识.趁着这个机会,将commonjs模块与es6模块之间一些重要的的区别做个总结.语法上有什么区别就不具体说了 ...
- ES6 模块加载export 、import、export default 、import() 语法与区别,笔记总结
ES6模块加载export .import.export default .import() 语法与区别 在 ES6 之前,社区制定了一些模块加载方案,最主要的有 CommonJS 和 AMD 两种. ...
- ES6模块加载方案 CommonJS和AMD ES6和CommonJS
目录 CommonJS CommonJS和AMD的对比 ES6和CommonJS 改成ES6 exports和module.exports CommonJS 每个文件就是一个模块,有自己的作用域.在一 ...
最新文章
- 关于在web项目中实现本地打印
- 前端笔记(3)css,选择器,文字文本属性,外观属性
- 梦有感 2009-10
- C语言 文件读写 EOF - C语言零基础入门教程
- steam 代购 机器人_两台Steam机器上市,对SteamOS的评论以及更多开放式游戏新闻
- MeiZu Primary
- 曾估值 45 亿美元!Apache Kafka 商业化公司 Confluent 计划上市:已申请 IPO
- Python操作数据库完成接口测试
- FPGA测试方法以Mentor工具为例
- 486微型计算机的字长是 8位 16位 32位 64位,大学计算机基础考试试题
- 在word里批量插入由文件创建对象,word宏定义批量插入对象
- 微信js-sdk+JAVA实现分享接口
- 华为设备SEP配置命令
- ps软件打不开计算机受限制,w10打不开ps怎么解决
- 你所不知道的网盘搜索引擎
- 在当前项目组中引入敏捷开发思想
- 解决 git 将文本文件视为二进制文件 导致无法查看diff
- Java 冒泡排序法
- 2021年中国电气工业百强企业排行榜:7家企业主营业务收入破百亿,上市企业占4席(附年榜TOP100详单)
- C++ 资源大全(各种库)---------伯乐在线
热门文章
- mysql autocommit_【整理】MySQL 之 autocommit
- 【Linux系统】Linux命令之文件管理
- PDF转换图片,图片的切割,图片转换PDF以及PDF加水印等记录贴
- Missing message for key xxx in bundle (default bundle) for locale zh_CN
- [机器学习]信息熵信息增益
- CentOS5 部署 戴尔OMSA
- 生产环境下,oracle不同用户间的数据迁移。第一部分
- centos7下安装pip以及mysql等软件
- 使用 Navicat Lite 连接 Oracle 数据库
- C++基础学习笔记001