这听起来对我来说真是愚蠢,但是我对此没有真正的答案。
如果您可以通过script标记将多个js文件连接到html,以便它们充当模块(共享相同的作用域),那么使用ES6模块或CommonJS(在使用browserifiy的浏览器中)有什么意义?
在大小合适的Web应用程序中,您必须考虑到有多个开发人员正在从事该项目,因此,关注点分离是开发可维护应用程序的关键要素之一,这使下一个假想的情况更加痛苦:
您的Web应用程序中有一个名为library.js的文件。ES2015模块语法
export function calculatesquareArea(object) {
// code that calculates area
}
export function calculateVolume(object){
// code that calculates volume
}
现在,我们通过执行以下操作将此模块导入到我们的代码中:
import { calculatesquareArea } from 'library'
// We log the output of the execution of calculatesquareArea
console.log( calculateSquareArea(object))
您可能会立即注意到,在我的模块中,我有2个函数,但是我决定只导入一个函数,因为那时我只需要使用那个函数。也许这是一个愚蠢的示例,但是您可以利用CommonJS或ES6模块的模块化特性来实现代码重用。
有关于CommonJS的和ES2015模块之间的关键区别更详尽的文章在这里
希望这能有所帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句