学习十二、ES Modules的注意事项

# 基本特性

 

- 自动采用严格模式,忽略'use strict'

 

- 每个 ESM 模块都是单独的私有作用域

 

- ESM 是通过 CORS 去请求外部 JS 模块的

 

- ESM 的 script 标签会延迟执行脚本

 

# 导入和导出

 

- 导入导出使用的 {} 并不是对象的解构,只是一种语法

 

- 模块的导出过程中,外部导出的成员会受内部修改的影响

 

- 导出的成员是一个只读的成员,无法被修改

 

# 导入的用法

 

- 导入时必须使用完整的扩展名称,不可以省略.js 的扩展名,与 CommonJS 有区别

 

- 导入时也必须输入完整的文件地址,不可以省略 index 这种默认访问名称

 

- './'相对路径也不可以省略(或'/'绝对路径)必须以此开头,不然会被认为是引入模块

 

- 可以用 url 来引用模块文件

 

- import './module.js' 加载模块但并不提取他

 

- import \* as obj from './module.js' 导出所有成员,并放入 obj 对象

 

- 如果需要动态加载模块可以使用 import('./module.js').then(function(data){console.log(data)})

 

- import title ,{name,age} from './module.js' 花括号之前为默认成员 default。

 

## ES Modules in Node.js 与 CommonJS

 

- ES Modules 中可以导入 CommonJS模块

 

- CommonJS 中不能导入 ES Modules模块

 

- CommonJS 始终只会导出一个默认成员

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值