欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ES6 import and export

程序员文章站 2022-03-14 09:41:19
定义: 用来导入或者导出模块。 ES6 的模块自动采用严格模式,不管你有没有在模块头部加上"use strict";。 严格模式主要有以下限制。 变量必须声明后再使用 函数的参数不能有同名属性,否则报错 不能使用with语句 不能对只读属性赋值,否则报错 不能使用前缀 0 表示八进制数,否则报错 不 ......

定义:

用来导入或者导出模块。

ES6 的模块自动采用严格模式,不管你有没有在模块头部加上"use strict";

严格模式主要有以下限制。

  • 变量必须声明后再使用
  • 函数的参数不能有同名属性,否则报错
  • 不能使用with语句
  • 不能对只读属性赋值,否则报错
  • 不能使用前缀 0 表示八进制数,否则报错
  • 不能删除不可删除的属性,否则报错
  • 不能删除变量delete prop,会报错,只能删除属性delete global[prop]
  • eval不会在它的外层作用域引入变量
  • evalarguments不能被重新赋值
  • arguments不会自动反映函数参数的变化
  • 不能使用arguments.callee
  • 不能使用arguments.caller
  • 禁止this指向全局对象
  • 不能使用fn.callerfn.arguments获取函数调用的堆栈
  • 增加了保留字(比如protectedstaticinterface

进入正文:

export import 是对应的。

第一种:export default

import defaultExport from "/module-name.js";

//对应的module-name.js文件中

//1个需要export的
export default function defaultExport(x) {
  return x * x * x;
}
//多个需要export的
export default {
    applyMenus,
    loadMenuePage,
    addMenu,
    editMenu,
    delMenu,
    menuListPage,
    addMenuPage,
    editMenuPage
}

第二种:

import * as Backbone from 'backbone'
//以上代码是将backbone文件中所有导出,均以名字Backbone导入

第三种:

import { exportName as alias } from "/module-name";

//对应的export 文件
export { exportName }

export 可以输出变量,函数或者类(class)

var firstName = 'Michael';
var lastName = 'Jackson';
var year = 1958;

export {firstName, lastName, year};

//第二种方法
export var firstName = 'Michael';
export var lastName = 'Jackson';
export var year = 1958;