Javascript实现的Map集合工具类完整实例

本文实例讲述了Javascript实现的Map集合工具类。分享给大家供大家参考。具体如下:

rush:js;"> var Map = function(){ // 构造entry实体 var Entry = function(key,value){ this.key = key; this.value = value; } this.entries = new Array(); // 构造put方法在数组中放入一个Entry this.put = function(key,value){ // 数组中已存在就不放入 for (var i = 0; i < this.size(); i++) { if (this.entries[i].key === key) { return false; } } this.entries.push(new Entry(key,value)); }; // 模拟get方法 this.get = function(key){ for (var i = 0; i < this.size(); i++) { if (this.entries[i].key === key) { return this.entries[i].value; } } return null; }; // 查找下标值 this.indexOf = function(key){ var index = -1; for (var i = 0; i < this.size(); i++) { if (this.entries[i].key === key) { index = i; break; } } return index; } // 删除一个元素 this.remove = function(key){ var index = this.indexOf(key); if (index != -1) { this.entries.splice(index,1); } } // 取得map长度 this.size = function(){ return this.entries.length; }; // 重新设置键值对 this.setValue = function(key,value){ var index = this.indexOf(key); if (index != -1) { this.entries[i].value = value; }; }; // 是否为空map this.isEmpty = function(){ return this.size() <= 0; }; //清空map ; this.clear = function(){ this.entries = []; }; // 得到entry实体 this.getEntry = function(index){ if (index >= 0 && index < this.size()) { return this.entries[index]; } return null; } this.toString = function(){ var str = "["; for (var i = 0; i < this.size(); i++) { str += this.getEntry(i).key + "=" + this.getEntry(i).value + ","; } // 去除最后一个"," str = str.substring(0,str.length - 1); str += "]"; return str; }; }

希望本文所述对大家的javascript程序设计有所帮助。

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...