import语句和import()属于ES6语法,而require()属于node中的。其中import()是ES2020引入函数,支持动态加载模块。
import命令能够接受什么参数,import()函数就能接受什么参数,两者区别主要是后者为动态加载。
import是静态加载资源,编译时放到代码块最顶层。
import()函数则是动态按需加载返回Promise 对象。import()
函数可以用在任何地方,不仅仅是模块,非模块的脚本也可以使用。
import()函数它是运行时执行,也就是说,什么时候运行到这一句,就会加载指定的模块。
import()
函数与所加载的模块没有静态连接关系,这点也是与import
语句不相同。import()
类似于 Node 的require
方法,区别主要是前者是异步加载,后者是同步加载。
参数 | 是否动态加载 | 与所加载的模块是否有静态连接关系 | |
import语句 | 引入的地址路径 | 否 | 是 |
import() | 引入的地址路径 | 是(异步加载) | 否 |
require() | 引入的地址路径 | 是(同步加载) | 否 |