Dojo 学习笔记–dojo模块引用 和上下文绑定
发布时间:2020-12-16 21:31:05 所属栏目:百科 来源:网络整理
导读:1. dojo 的模块化 dojo 的模块化是指,dojo将每个冗杂的js代码有组织的分割开,划分为模块,需要该模块时,将其引入,即可使用,这个类似于在java代码里的 import 语句; 比如我们需要dojo.a.b 模块,只需要执行下面的语句: require("dojo.a.b"); // 实际上
1. dojo 的模块化 dojo 的模块化是指,dojo将每个冗杂的js代码有组织的分割开,划分为模块,需要该模块时,将其引入,即可使用,这个类似于在java代码里的 import 语句; 比如我们需要dojo.a.b 模块,只需要执行下面的语句: require("dojo.a.b"); // 实际上这个是相当于加载dojo/a/b.js 文件 2、dojo.hitch() 此方法为指定的函数绑定上下文,并执行。 function printAge() { console.log(age); } var girl = { age:20 } var woman = { age:40 } dojo.hitch(girl,printAge); // 为printAge 绑定girl上下文,输出:20; dojo.hitch(woman,printAge); //为printAge 绑定woman 上下文 ,输出 40;
//dojo.hitch 的实质: dojo.hitch(o,f); //o 是对象,f是函数 //等价于 function (){ return f.apply(o,arguments)}; function() { return f.call(o,.....) }; dojo.hitch跟空对象绑定的情况: // dojo.global 是对全局对象空间的一个引用 //第一种形式 dojo.hitch(null,f); // f 是一个函数,等价于 dojo.hitch(f); // 返回 f //第二种形式 dojo.hitch(null,"f"); // 等价于 dojo.hitch("f"); //返回.. function() {return dojo.global[f].apply(dojo.global,arguments);} dojo.hitch() 的一般语法: dojo.hitch(context,functionName,arg1,arg2,arg3.......); //等价于: function(){ return context,functionName.apply( context,[arg1,arg3....].concat(arguments) ); }; }; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |