网站建设规范布局有几部分,北京做微信网站,网站推广公司就去柚米,坂田网站建设方案模块化概念
模块化开发可以提高代码的可维护性、可读性和复用性#xff0c;同时降低开发和调试的复杂性#xff0c;把业务根据功能分开写#xff0c;解决变量命名的冲突#xff0c;可以开放部分接口给类#xff08;例如调用模块里的一个函数#xff09;也更适合团队协作…模块化概念
模块化开发可以提高代码的可维护性、可读性和复用性同时降低开发和调试的复杂性把业务根据功能分开写解决变量命名的冲突可以开放部分接口给类例如调用模块里的一个函数也更适合团队协作
模块化的开发方式可以提供代码复用率方便进行代码的管理。通常来说一个文件就是一个模块有自己的作用域只向外暴露特定的变量和函数。目前流行的js模块化规范有CommonJS、AMD、CMD以及ES6的模块系统。
开发一个模块管理工具
在这里我们自己写一个可以更好的理解模块管理
实现模块的添加、定义、依赖使用容器管理模块
其他想说的都在代码里了 let module (function () {const moduleList {}//存储模块function define(name, modules, action) {modules.map((m, i) {modules[i] moduleList[m]})//map方法的参数m是模块i是编号,从容器里拿出来moduleList[name] action.apply(null, modules)//在模块容器里放一个模块初始化的时候会执行//console.log(moduleList)}return { define }})()//一个立即执行函数//module.define(name, modules, function (){})是在定义模块name是模块的名字modules表示依赖哪个模块function表示模块的具体动作module.define(count, [], function () {//[]表示不依赖别的模块return {first(arr) {//返回第一个元素的功能return arr[0]},max(arr, key) {//返回最大元素的功能return arr.sort((a, b) b[key] - a[key])[0]}}//return导出})//count模块对外输出了两个函数module.define(lesson, [count], function (result) {//[count]是在导入,result是count的结果let data [{ name: js, price: 199 }, { name: mysql, price: 78 }]console.log(result.max(data, price))//{name: js, price: 199}})//我是一条分割线下面的是有模块依赖的使用module.define(User, [], function () {return {site: 我是初始值,url: 我是初始url}})module.define(change, [User], function (User) {User.site 初始值在change模块被改变了})//模块的改变是全局的module.define(show, [User], function (User) {console.log(我是show模块, User)})
模块的基本使用
我和草能不能张口就是我没学过的东西
先发再写