代码详解javascript模块加载器


Posted in Javascript onMarch 04, 2018

定义

var MyModules = (function Manager() {
  var modules = {};
  function define (name, deps, impl) {
    for(var j = 0, length = deps.length; j < length; j++){
      deps[j] = modules[deps[j]];
    }
    modules[name] = impl.apply(impl, deps);
  }

  function get (name) {
    return modules[name];
  }

  return {
    define: define,
    get: get
  }
})();

使用

MyModules.define('test1', [], function() {
  function hello(name) {
    console.log(name);
  }
  
  return {
    hello: hello
  }
});

MyModules.define('test2', ['test1'], function(test1) {
  function age(name, age) {
    console.log(test1.hello(name));
    console.log(age);
  }
  
  return {
    age: age
  }
});

MyModules.get('test2').age('mumu', '27');

以上就是本次分享的全部代码内容,大家可以测试下,如果还有任何不明白的地方可以在下方的留言区讨论,感谢大家对三水点靠木的支持。

Javascript 相关文章推荐
飞鱼(shqlsl) javascript作品集
Dec 16 Javascript
JavaScript 编程引入命名空间的方法
Jun 29 Javascript
TopList标签和JavaScript结合两例
Aug 12 Javascript
纯JS实现的批量图片预览加载功能
Aug 14 Javascript
javascript针对DOM的应用分析(二)
Apr 15 Javascript
jqueyr判断checkbox组的选中(示例代码)
Nov 08 Javascript
用于deeplink的js方法(判断手机是否安装app)
Apr 02 Javascript
Node.js connect ECONNREFUSED错误解决办法
Sep 15 Javascript
js中作用域的实例解析
Mar 16 Javascript
js基于FileSaver.js 浏览器导出Excel文件的示例
Aug 15 Javascript
简单谈谈vue的过渡动画(推荐)
Oct 11 Javascript
axios实现简单文件上传功能
Sep 25 Javascript
Vue用v-for给src属性赋值的方法
Mar 03 #Javascript
vue中v-for加载本地静态图片方法
Mar 03 #Javascript
基于vue中解决v-for使用报红并出现警告的问题
Mar 03 #Javascript
基于Vuejs的搜索匹配功能实现方法
Mar 03 #Javascript
vue.js select下拉框绑定和取值方法
Mar 03 #Javascript
Vuejs在v-for中,利用index来对第一项添加class的方法
Mar 03 #Javascript
基于vue v-for 循环复选框-默认勾选第一个的实现方法
Mar 03 #Javascript
You might like
聊天室php&amp;mysql(五)
2006/10/09 PHP
Ajax提交表单时验证码自动验证 php后端验证码检测
2016/07/20 PHP
PHP后期静态绑定之self::限制实例分析
2018/12/21 PHP
用JS提交参数创建form表单在FireFox中遇到的问题
2013/01/16 Javascript
JS页面延迟执行一些方法(整理)
2013/11/11 Javascript
javascript委托(Delegate)blur和focus用法实例分析
2015/05/26 Javascript
jQuery实现的调整表格行tr上下顺序
2016/01/10 Javascript
详解javascript实现自定义事件
2016/01/19 Javascript
浅谈JavaScript的全局变量与局部变量
2016/06/10 Javascript
JavaScript Ajax编程 应用篇
2016/07/02 Javascript
WebView启动支付宝客户端支付失败的问题小结
2017/01/11 Javascript
Angular2入门--架构总览
2017/03/29 Javascript
bootstrap如何让dropdown menu按钮式下拉框长度一致
2017/04/10 Javascript
JavaScript简单计算人的年龄示例
2017/04/15 Javascript
js下载文件并修改文件名
2017/05/08 Javascript
详解JavaScript中return的用法
2017/05/08 Javascript
vue项目中引入Sass实例方法
2019/08/27 Javascript
vue动态路由:路由参数改变,视图不更新问题的解决
2019/11/05 Javascript
js实现九宫格布局效果
2020/05/28 Javascript
pytorch + visdom CNN处理自建图片数据集的方法
2018/06/04 Python
pytorch对可变长度序列的处理方法详解
2018/12/08 Python
matplotlib绘制多个子图(subplot)的方法
2019/12/03 Python
关于tf.nn.dynamic_rnn返回值详解
2020/01/20 Python
keras 实现轻量级网络ShuffleNet教程
2020/06/19 Python
Python TestSuite生成测试报告过程解析
2020/07/23 Python
HTML5页面直接调用百度地图API获取当前位置直接导航目的地的实现代码
2018/03/02 HTML / CSS
社团活动策划书范文
2014/01/09 职场文书
大学班长的职责
2014/01/27 职场文书
党务公开方案
2014/05/06 职场文书
诚信考试标语
2014/06/24 职场文书
2014年财务工作总结与计划
2014/12/08 职场文书
2015年求职自荐信范文
2015/03/04 职场文书
煤矿百日安全活动总结
2015/05/07 职场文书
公诉意见书范文
2015/06/05 职场文书
教师个人工作总结范文2015
2015/10/14 职场文书
Python编写nmap扫描工具
2021/07/21 Python