JAVASCRIPT使用map的put问题处理
来源:互联网 发布:彩虹六号网络strict 编辑:程序博客网 时间:2024/05/19 09:39
网上找的javascript使用map的代码挺好用的,就是有一点小问题,put的时候并不是类似java的map可以保存唯一的key,所以做了小修改。
以下代码是完整的,主要修改了put的处理,增加可修改值的功能,及containsKey, containsValue的for循环增加break;以优化性能。
/** * javascript map */function Map() {this.elements = new Array();//获取MAP元素个数 this.size = function() {return this.elements.length;}//判断MAP是否为空 this.isEmpty = function() {return (this.elements.length < 1);}//删除MAP所有元素 this.clear = function() {this.elements = new Array();}//向MAP中增加元素(key, value) this.put = function(_key, _value) {var isContainKey=false;for (var i = 0; i < this.elements.length; i++) {if (this.elements[i].key == _key) {isContainKey=true;this.elements[i].value=_value;break;}}if(isContainKey==false){this.elements.push({key : _key,value : _value});}}//删除指定KEY的元素,成功返回True,失败返回False this.remove = function(_key) {var bln = false;try {for (var i = 0; i < this.elements.length; i++) {if (this.elements[i].key == _key) {this.elements.splice(i, 1);return true;}}} catch (e) {bln = false;}return bln;}//获取指定KEY的元素值VALUE,失败返回NULL this.get = function(_key) {try {for (var i = 0; i < this.elements.length; i++) {if (this.elements[i].key == _key) {return this.elements[i].value;}}} catch (e) {return null;}}//获取指定索引的元素(使用element.key,element.value获取KEY和VALUE),失败返回NULL this.element = function(_index) {if (_index < 0 || _index >= this.elements.length) {return null;}return this.elements[_index];}//判断MAP中是否含有指定KEY的元素 this.containsKey = function(_key) {var bln = false;try {for (var i = 0; i < this.elements.length; i++) {if (this.elements[i].key == _key) {bln = true;break;}}} catch (e) {bln = false;}return bln;}//判断MAP中是否含有指定VALUE的元素 this.containsValue = function(_value) {var bln = false;try {for (var i = 0; i < this.elements.length; i++) {if (this.elements[i].value == _value) {bln = true;break;}}} catch (e) {bln = false;}return bln;}//获取MAP中所有VALUE的数组(ARRAY) this.values = function() {var arr = new Array();for (var i = 0; i < this.elements.length; i++) {arr.push(this.elements[i].value);}return arr;}//获取MAP中所有KEY的数组(ARRAY) this.keys = function() {var arr = new Array();for (var i = 0; i < this.elements.length; i++) {arr.push(this.elements[i].key);}return arr;}}
- JAVASCRIPT使用map的put问题处理
- map的put和putIfAbsent使用
- Map put和remove的 使用
- Map put 使用
- map的put理解
- Map的put方法的返回值问题:
- Map put
- FastJSON处理Map的问题
- hadoop2.x使用put命令报错的问题
- javascript source map 的使用
- Map集合put方法的返回值
- 一滴水:关于Java容器类库概念及Map.put();方法的使用
- 关于hashmap put 的问题
- 关于map处理String的复杂度问题
- 使用put方法接收客户端提交的put请求
- JAVAScript js 模拟JAVA map类 实现put get 等JAVA map类方法
- JAVAScript js 模拟JAVA map类 实现put get 等JAVA map类方法
- 使用Javascript实现简单的Map
- ural 1846. GCD 2010
- solaris操作系统,常用的命令(备忘录)
- hello csdn
- 安装反编译工具 Reflector
- 多线程编程 -wait(),notify()/notityAll()方法 .
- JAVASCRIPT使用map的put问题处理
- jquery+cookie+json保存浏览商品的记录
- 开始使用新浪博客
- 不卖童话书
- JavaScript中的面向对象编程
- 不能启用此约束,因为不是所有的值都具有相应的父值。
- Linux的链接工具 putty 以及一些命令。
- Android 调节屏幕亮度问题
- DIV在FLASH上面、FLASH透明背景