有谁能理一下js的模块化历史进程么?或者继续补充下来

  1. 浏览器端的amd模块定义- 异步模块定义; 最大特点是提前预备好模块,然后也有按需加载的方式;例如淘宝的kissy

  2. sea.js的cmd-通用模块定义; 在node.js出来之后,想让前端的模块化方式尽可能的保持和node.js的一致。然后,也有一些异步加载的方式。

  3. node.js的模块化,很大一个特点是,有一个公共的node_modules的区域,用来存储当前的模块,然后,模块化的方式也是 import export这样。

  4. es6的模块化方式,让前端也具备这样的能力,但是,现在es6因为执行的问题,很难跑全浏览器,刚刚好webpack这样的方式,可以避免类似于模块怎么加载的问题,因为他就是一个js文件或者由打包定义好的几个js文件,跟你程序的运行逻辑其实没什么关系。所以,前端直接es6 improt export 完事儿。

  5. 还有一些组织方式,比如class,或者function,其核心也是一些数据和方法内聚到一个包里面,然后提升简洁性和可维护性,本质上是一样的。当然,这是实例级别的组织方式,而不是模块级别的。一个模块会有很多各类,也有可能。

  6. 插件的形式

这些还有谁能补充一下么? 或者有什么更好的线索。。


缥缈止盈
浏览 383回答 1
1回答

隔江千里

可以参考这个
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript