JavaScript

超轻量级php框架startmvc

代码详解javascript模块加载器

更新时间:2020-06-30 15:24:02 作者:startmvc
定义varMyModules=(functionManager(){varmodules={};functiondefine(name,deps,impl){for(varj=0,length=deps.length;j<le

定义


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 模块加载器