Module

CommonJS是在推行Node.js时建立的一个模块化的规范制度,他的模块就指对象,输入时必须查找对象的属性,就像用Node.js书写代码一样:

let {stat , exists , readFile } = require('fs');//这条语句的实质是先整体加载fs模块,然后在使用时用到3个方法,被称为“运行时加载”。

ES6模块不是对象,而是通过export命令显式指定输出代码,输入时采用静态命令的形式:

Iimport {stat , exists , readFile } from 'fs';//这条语句实质是只加载fs模块的3个方法,被称为“编译时加载”;

1.export

export命令用于规定模块的对外接口,import命令用于输入其他模块的功能;export命令可以出现在模块的任何位置,只要不处于快级作用域内就好。

export * from "....." //代表输出文件地址所指文件内所有的属性和方法,但不包括默认方法

2.import

通过import来加载输出的模块。

import接收一个对像,里面指定变量名必须与被导入的对外接口名称相同;

整体加载:import * as circle from './circle';circle.area();circle.x();

3.module

module用来达到整体输入模块的作用;

module circle from './circle'; 

4.export default

export default  function(){.........}

import circle(任意起的函数名)  from “...”

export default function circle(){...................}

import circle from "............"

5.模块之间的继承

6.ES6模块加载的实质

common.js输出的是值的拷贝,而ES6输出的是值的引用

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 这种加载称为“运行时加载”,因为只有运行时才能得到这个对象,导致完全没办法在编译时做“静态优化”。 ES6 模块不...
    codeSirCao阅读 3,508评论 0 0
  • Module 语法 ES6 模块不是对象,而是通过 export 命令显示指定输出的代码,再通过 import 命...
    Mjericho阅读 3,757评论 0 0
  • 认识模块 JS 作为一名编程语言,一直以来没有模块的概念。严重导致大型项目开发受阻,js 文件越写越大,不方便维护...
    faremax阅读 3,890评论 0 0
  • JavaScript 一直没有模块(module)体系,无法将一个大程序拆分成互相依赖的小文件,再用简单的方法拼装...
    紫夏离殇阅读 3,038评论 0 0
  • 介绍 在ES6之前社区定制了一些模块加载方案,主要有CommonJS和AMD两个,CommonJS用于服务器,而A...
    jingqian_xi阅读 1,634评论 0 0

友情链接更多精彩内容