dojo学习笔记

通过使用IBM公司开发的Proces Designer软件从事流程开发工作已经有1年时间了,处理流程搭建的小问题倒是游刃有余,但是就PD中的控件开发,还是有点力不从心,主要是对dojo没有进行系统化的学习。我步入编程行业有两年的历史了,在这两年的时间了,没日没夜的加班倒是挺多的,好久没有自己学习充电了,现在趁工作之余,将dojo学习一遍,当然更欢迎有从事IBM公司开发的BPM方面工作的朋友可以加个好友交流一下,毕竟IBM公司的论坛都讲的是英语,作为一名英语四级还没过的学渣,还是有点难受的。

在BPM的Coach视图中,可以引入Dojo的依赖,还是比较方便的。

dojo学习笔记_第1张图片

dojo/_base/array

every(arr,callback,thisObject) :这个方法可以用来做验证,判断数组中每一项是否满足条件。

var result1 = array.every([1, 2, 3, 4], function(item){ 
    return item > 1; 
});
var result2 = array.every([1, 2, 3, 4], function(item){ 
    return item > 0; 
});
console.info(result1 );
console.info(result2 );

通过上面的代码,可以测试出,返回结果一个是false,一个是true。也就是说数组自动遍历,return 后面的条件都满足,返回结果是true,不满足返回结果是false。

filter(arr,callback,thisObject):根据条件过滤,得到一个新数组。

// returns [2, 3, 4]
var arr = array.filter([1, 2, 3, 4], function(item){ return item>1; });
console.info(arr);

forEach(arr,callback,thisObject):遍历循环数组中每一项,且不能使用break对其进行中断,callback为回调函数。

// 用一个全局变量中的一个属性作为回调函数
var obj = {
    prefix: "建字第",
    callback: function(item){
        console.log(this.prefix, item);
    }
};
 
// 遍历循环数组,调用对象,时限数组内字符串拼接,输出结果如下
// 建字第 370102201800008
// 建字第 370102201800009
// 建字第 370102201800010
// 建字第 370102201800011
array.forEach(
    [ "370102201800008", "370102201800009", "370102201800010", "370102201800011" ],
    obj.callback,
    obj
);

// 同样,可以使用lang.hitch()完成同样的操作,结果和上面相同,但要引入dojo/_base/lang的依赖
array.forEach(
    [ "370102201800008", "370102201800009", "370102201800010", "370102201800011" ],
    lang.hitch(obj, "callback")
);

 

你可能感兴趣的:(dojo)