ES6 import and export
程序员文章站
2022-10-19 13:21:13
定义: 用来导入或者导出模块。 ES6 的模块自动采用严格模式,不管你有没有在模块头部加上"use strict";。 严格模式主要有以下限制。 变量必须声明后再使用 函数的参数不能有同名属性,否则报错 不能使用with语句 不能对只读属性赋值,否则报错 不能使用前缀 0 表示八进制数,否则报错 不 ......
定义:
用来导入或者导出模块。
ES6 的模块自动采用严格模式,不管你有没有在模块头部加上"use strict";
。
严格模式主要有以下限制。
- 变量必须声明后再使用
- 函数的参数不能有同名属性,否则报错
- 不能使用
with
语句 - 不能对只读属性赋值,否则报错
- 不能使用前缀 0 表示八进制数,否则报错
- 不能删除不可删除的属性,否则报错
- 不能删除变量
delete prop
,会报错,只能删除属性delete global[prop]
-
eval
不会在它的外层作用域引入变量 -
eval
和arguments
不能被重新赋值 -
arguments
不会自动反映函数参数的变化 - 不能使用
arguments.callee
- 不能使用
arguments.caller
- 禁止
this
指向全局对象 - 不能使用
fn.caller
和fn.arguments
获取函数调用的堆栈 - 增加了保留字(比如
protected
、static
和interface
)
进入正文:
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;