您的位置:首页 > Web前端 > AngularJS

multiMap by angular

2015-10-14 00:00 811 查看
摘要: 一个存储key/value 的存储结果

angular.module('demo',[])

.factory('$$multiMap',function(){
return {
createNew:function(){
var map = {};

return {
entries:function(){
return Object.keys(map).map(function(key){
return {
key:key,
value:map[key]
}
});
},

get:function(key){
return map[key];
},

hasKey:function(key){
return !!map[key];
},

keys:function(){
return Object.keys(map);
},

put:function(key,value){
if(!map[key]){
map[key] = [];
}

map[key].push(value);
},

remove:function(key,value){
var values = map[key];

if(!values){
return;
}

var idx = values.indexOf(value);

if(idx !== -1){
values.splice(idx,1);
}

if(!value.length){
delete map[key];
}
}
}
}
}
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: