1.CommonJs和Es6(ECMAScript 6 )模块化的相同点和不同点
// 相同点:
// ---对引入的对象赋值,即对象内部的值的改变
// 不同点:
// 1.CommonJs require模块运行时加载,而Es6模块编译时输出接口
// 2.CommonJs require模块同步加载(排队加载),而es6模块异步加载(就是同时加载,不影响其他模块的执行)
// 3.CommonJs require对模块的浅拷贝,Es6只读只存不改变其值
//4.import 接口 只读 不能修改其值:
当使用import导入一个接口时,该接口是只读的,不能直接修改其变量的值。这意味着不能改变被导入变量的指针指向(即不能将其指向另一个对象),但可以改变变量内部的指针指向(即可以修改对象内部的属性)。在CommonJS中,可以重新对导入的变量赋值(即改变指针指向),但在ES6模块中,赋值操作会导致编译错误。
//--运行时加载:
// CommonJS 模块就是对象;是先加载整个模块,生成一个对象,然后再从这个对象上面读取方法,这种加载称为“运行时加载”。
// --编译时加载:
// ES6模块不是对象,而是通过 export 命令「显式指定输出的代码」。
// import 时采用静态命令的形式,即在import指定「加载某个输出值」,而「不是加载整个模块」,
// 这种加载称为“编译时加载”。
文章来源地址https://www.toymoban.com/news/detail-855498.html
文章来源:https://www.toymoban.com/news/detail-855498.html
到了这里,关于关于前端的那些知识点的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!