js map类型实现
2015-11-24 13:40
525 查看
map是面向对象程序语言中比较常使用的一种数据类型,主要是因为比较好用的键值对形式,javascript由于是脚本语言,原生的类型中没有map中类型,但是可以通过构造自己创建map数据类型:
map类型:
通过这中方式创建出来的map类型,可以使用new 关键字,
例如:
var map = new UtilMap();
并且可以拓展自己需要的方法,这就实现了比较简单的map 类型。
map类型:
function UtilMap() { var struct = function (key, value) { this.key = key; this.value = value; }; var put = function (key, value) { for (var i = 0; i < this.arr.length; i++) { if (this.arr[i].key === key) { this.arr[i].value = value; return; } } this.arr[this.arr.length] = new struct(key, value); }; var get = function (key) { for (var i = 0; i < this.arr.length; i++) { if (this.arr[i].key === key) { return this.arr[i].value; } } return null; }; var getKey = function (index) { if (index > -1 && index < this.arr.length) { return this.arr[index].key; } return null; }; var remove = function (key) { var v; for (var i = 0; i < this.arr.length; i++) { v = this.arr.pop(); if (v.key === key) { continue; } this.arr.unshift(v); } }; var size = function () { return this.arr.length; }; var isEmpty = function () { return this.arr.length <= 0; }; this.arr = new Array(); this.get = get; this.getKey = getKey; this.put = put; this.remove = remove; this.size = size; this.isEmpty = isEmpty; }
通过这中方式创建出来的map类型,可以使用new 关键字,
例如:
var map = new UtilMap();
并且可以拓展自己需要的方法,这就实现了比较简单的map 类型。
相关文章推荐
- Array.prototype方法详解(上)
- 关于js中的 splice()和slice()实例
- fingerprintjs
- js计算散点图方程式
- js遮罩效果
- 一步步学习javascript基础篇(2):作用域和作用域链
- JavaScript转换与解析JSON方法实例详解
- JScrollPane控件中添加其他控件的问题&&JScrollPane设置滚动条&&调整滚动速度
- JS数组排序技巧汇总(冒泡、sort、快速、希尔等排序)
- 关于Extjs使用window.opener报错
- JS获取数组最大值、最小值及长度的方法
- js加减
- JS获取当前时间
- JS获取当前时间
- JSON及JSON-LIB
- Javascript:ajax
- C#实现将javascript文件编译成dll文件的方法
- JS实现图片高亮展示效果实例
- 关于string.substring() string.slice() splice()方法 在js和c#中的不同
- js日期格式化器,format,parse