JavaScript中模拟实现Java的集合类Map的常用方
2015-08-04 10:00
603 查看
JavaScript中模拟实现Java的集合类Map的常用方法<span style="font-size:14px;">(function (){
function MapCache() {
var len = 0, cache = {};
this.put = function (key, value){
if ( key === null && key === undefined ){
throw new Error( " null or undefined is not a illegality variable ! " );
}
if (cache[ key + " " ] == undefined) {
cache[ key + " "] = value;
len++;
return;
}
cache[ key + " " ] = value;
};
this.get = function (key) {
return cache[ key + " " ];
};
this.remove = function (key) {
var value;
if ( key !== null || key !== undefined ) {
value = cache[ key + " " ];
delete cache[ key + " " ];
len--;
return value;
}
return value;
};
this.clear = function () {
cache = {};
len = 0;
};
this.keys = function () {
var keys = [], prop;
for ( prop in cache ){
keys.push( prop.substring(0, prop.length - 1) );
}
return keys;
};
this.size = function () {
return len;
};
}
// 遵循 AMD 模块化规范, 支持RequireJS 模块化导出
if ( typeof define === 'function' && define.amd ) {
define('jmap', [], function (){
return MapCache;
})
}
return MapCache;
}());</span>
相关文章推荐
- Difference between Properties and Attributes in JavaScript
- js之iframe子页面与父页面通信
- Javascript实现鼠标右键特色菜单
- Javascript模块化编程(二):AMD规范
- 常用的Javascript数据验证插件
- js事件委托
- Emberjs笔记
- Jsoup学习笔记9:Jsoup 解析saz文件,读取其中的htm文件到字符串,提取字符串中的数据写入csv文件中
- JSP的基本原理
- 不一样的dynamic解析json 万能方法
- 关于EmberJs的一些规范
- 关于EmberJs的一些规范
- 关于EmberJs的一些规范
- javascript杂记
- JSTL(fn函数)
- javascript中的正则表达式
- js分享插件
- JavaScript之窗口的打开与关闭
- javascript制作计时器
- JavaScript之更换超链接