js常见的两种引入方式

100 阅读1分钟

在JS中,使用import语句引入模块时,引入的模块不会立即执行,而是在模块被引用时才会执行。

这是因为import语句是静态的,会在编译时处理,而不是在运行时处理。因此,当一个模块被引用时,该模块中的代码才会被执行,而不是在引入的时候就执行。

需要注意的是,当引入的模块被执行时,如果该模块中有全局代码,那么该全局代码会在引用该模块的代码执行之前执行。这是因为全局代码会在模块被加载时执行,而引用模块的代码是在加载完成后才执行的。因此,需要注意在模块中的全局代码不会影响到引用该模块的代码的执行。

require是动态加载,加载某个模块时,会立即运行整个模块的代码。当多次使用require加载同一个模块时,不会再执行该模块,而是取到缓存之中的值, 以后再加载,就返回第一次运行的结果,除非手动清除系统缓存