模块化

一、概述
      ES6模块化思想:静态化,编译时就确定这些模块的依赖关系。以及输入输出的对象。ES6模块
      CommonJs(服务器)或者AMD(浏览器)模块化就是对象,在运行时确定模块的依赖关系。
二、exports命令
      定义:一个模块就是一个独立的文件。该文件内部的所有变量,外部无法获取。如果你希望外部能够读取模块内部的某个变量,就必须使用export关键字输出该变量。
      用途:
              -- 变量
var firstName = "Michael";
var lastName = "Jackson";
 
// 单个变量
export firstName; 
// 多个变量要用{}
export { firstName, lastName } 
          -- 函数
export function multiply(x, y) {
     return x * y;
};
 
// export输出的变量就是本来的名字,但是可以使用as关键字重命名。
function v1() { ... }
function v2() { ... }
export {
    v1 as streamV1,
    v2 as streamV2,
};
          -- 类
export class multiply  {
  
};
三、import命令
      定义:使用export命令定义了模块的对外接口,其他JS文件就可以通过import命令加载这个模块。import命令是编译阶段执行的,在代码运行之前
import {firstName, lastName} from './profile';
// 如果想为输入的变量重新取一个名字,import命令要用as关键字,将输入的变量重命名
import { lastname as surname} from './profile';
      模块整体加载:星号(*)指定一个对象,所有输出值都加载在这个对象上面。
import * as circle from './circle';
console.log('圆面积:' + circle.area(4));
console.log('圆周长:' + circle.circumference(14));
四、export default命令
      定义:为模块指定默认输出。一个模块只能有一个默认输出。所以,import命令后面才不用加大括号,因为只可能对应一个方法。
export default function () { // 输出
  // ...
}
import crc32 from 'crc32'; // 输入
      一条import语句中,同时输入默认方法和其他接口
import _, { each, each as forEach } from 'lodash';
 

转载于:https://www.cnblogs.com/nankeyimeng/p/7246095.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值