ES6 import and export

Posted yadiblogs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6 import and export相关的知识,希望对你有一定的参考价值。

定义:

用来导入或者导出模块。

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;

 


以上是关于ES6 import and export的主要内容,如果未能解决你的问题,请参考以下文章

ES6模块之export和import教程

ES6中export 和 import

[ES6]import 与export的用法 ,export 与export default 的 区别 以及用法

export,import, es6 export, es6 import

如何有条件地导入ES6模块?

ES6新特性:模块化(import 和 export)