Ext.util.MixedCollection

看extjs源码发现有很多MixedCollection, 它一个Collection类,既包含了数字索引也包含了key,并暴露了相关事件。它相当于java里的map和list,有四个事件:添加元素add、删除元素remove、替换元素replace、清空集合clear

(一)看看它是怎么用的

构造函数及getKey的使用
 1 // 一般方法
2 var mc = new Ext.util.MixedCollection();
3 mc.add(someEl.dom.id, someEl);
4 mc.add(otherEl.dom.id, otherEl);
5 //等等
6
7 // 使用getKey
8 var mc = new Ext.util.MixedCollection();
9 mc.getKey = function(el){
10 return el.dom.id;
11 };
12 mc.add(someEl);
13 mc.add(otherEl);
14
15 // 或者通过构造器
16 var mc = new Ext.util.MixedCollection(false, function(el){
17 return el.dom.id;
18 });
19 mc.add(someEl);
20 mc.add(otherEl);

(二)添加调用add方法即可,addAll方法用来添加一个个Array或者Object,如果 构造函数的allowFunctions被设置为true,那么函数引用也将被添加到集合中。

(三)取值会用到四个方法,item方法返回绑定到所传递的key或者index的项目。 key的优先级比index高。这与首先调用key 等价,然后如果没有项目匹配时调用 itemAt。 即它们的优先级是item (String/Number key) 、key(String/Number key) ->get(Number index) ->itemAt(Number index)

(四)比较常用的方法each、contains、remove等等等

转载于:https://www.cnblogs.com/suanmeitang/archive/2012/03/30/2426045.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值