模块

文件目录如下

静态加载

静态加载模块,保证导入的值在代码运行之前就可以使用
import {add} from "./module.js"
add(1, 2)    // 3

动态加载

ES2020引入import()支持动态加载模块,如通过网络传输的模块,由于动态加载模块是异步的,所以要配合then或 async/await来使用
import("./module.js").then(module => {
    console.log(module.add(1, 3))
})

(async function(){
    let module = await import("./module.js")
    console.log(module.add(2, 8))
}())

import.meta

import.meta 是一个给 JavaScript 模块暴露特定上下文的元数据属性的对象,它包含了这个模块的信息,比如说当前这个模块的URL
import.meta.url
结果为当前模块的url:file:///e:/%E8%AF%AD%E8%A8%80%E5%AD%A6%E4%B9%A0/JS%E6%9D%83%E5%A8%81%E6%8C%87%E5%8D%97/%E7%AC%AC10%E7%AB%A0-%E6%A8%A1%E5%9D%97/01-%E6%A8%A1%E5%9D%97%E7%9A%84%E5%8A%A8%E6%80%81%E5%8A%A0%E8%BD%BD.js
posted @ 2021-12-14 21:27  邢韬  阅读(25)  评论(0编辑  收藏  举报