js中生成map对象的方法


Posted in Javascript onJanuary 09, 2014
var Map = function(){ 
this._entrys = new Array(); this.put = function(key, value){ 
if (key == null || key == undefined) { 
return; 
} 
var index = this._getIndex(key); 
if (index == -1) { 
var entry = new Object(); 
entry.key = key; 
entry.value = value; 
this._entrys[this._entrys.length] = entry; 
}else{ 
this._entrys[index].value = value; 
} 
}; 
this.get = function(key){ 
var index = this._getIndex(key); 
return (index != -1) ? this._entrys[index].value : null; 
}; 
this.remove = function(key){ 
var index = this._getIndex(key); 
if (index != -1) { 
this._entrys.splice(index, 1); 
} 
}; 
this.clear = function(){ 
this._entrys.length = 0;; 
}; 
this.contains = function(key){ 
var index = this._getIndex(key); 
return (index != -1) ? true : false; 
}; 
this.getCount = function(){ 
return this._entrys.length; 
}; 
this.getEntrys = function(){ 
return this._entrys; 
}; 
this._getIndex = function(key){ 
if (key == null || key == undefined) { 
return -1; 
} 
var _length = this._entrys.length; 
for (var i = 0; i < _length; i++) { 
var entry = this._entrys[i]; 
if (entry == null || entry == undefined) { 
continue; 
} 
if (entry.key === key) {//equal 
return i; 
} 
} 
return -1; 
}; 
this._toString = function(){ 
var string = ""; 
for (var i = 0; i < this.getEntrys().length; i++) { 
string += this.getEntrys()[i].key+"::"+this.getEntrys()[i].value; 
if(i!=this.getEntrys().length-1){ 
string += ";"; 
} 
} 
return string; 
}; 
};
Javascript 相关文章推荐
输入框的字数时时统计—关于 onpropertychange 和 oninput 使用
Oct 21 Javascript
javascript开发随笔一 preventDefault的必要
Nov 25 Javascript
JavaScript实现复制功能各浏览器支持情况实测
Jul 18 Javascript
js模仿php中strtotime()与date()函数实现方法
Aug 11 Javascript
js实现简洁的TAB滑动门效果代码
Sep 06 Javascript
Bootstrap模态对话框的简单使用
Apr 29 Javascript
jquery实现文本框的禁用和启用
Dec 07 Javascript
ionic3+Angular4实现接口请求及本地json文件读取示例
Oct 11 Javascript
Vue.js 实现微信公众号菜单编辑器功能(二)
May 08 Javascript
浅谈微信小程序flex布局基础
Sep 10 Javascript
js实现上传图片到服务器
Apr 11 Javascript
Vue监视数据的原理详解
Feb 24 Vue.js
js获取通过ajax返回的map型的JSONArray的方法
Jan 09 #Javascript
jQuery如何实现点击页面获得当前点击元素的id或其他信息
Jan 09 #Javascript
js获取select标签选中值的两种方式
Jan 09 #Javascript
jquery自定义函数的多种方法
Jan 09 #Javascript
jQuery动态添加、删除元素的方法
Jan 09 #Javascript
jquery实现鼠标拖动图片效果示例代码
Jan 09 #Javascript
二叉树先序遍历的非递归算法具体实现
Jan 09 #Javascript
You might like
简单易用的计数器(数据库)
2006/10/09 PHP
vBulletin HACK----关于排版的两个HACK
2006/10/09 PHP
PHP实现阳历到农历转换的类实例
2015/03/07 PHP
PHP中Laravel 关联查询返回错误id的解决方法
2017/04/01 PHP
PHP读取目录树的实现方法分析
2019/03/22 PHP
PHP大文件切割上传并带进度条功能示例
2019/07/01 PHP
Laravel使用Queue队列的技巧汇总
2019/09/02 PHP
laravel数据库查询结果自动转数组修改实例
2021/02/27 PHP
JQuery之拖拽插件实现代码
2011/04/14 Javascript
javascript中兼容主流浏览器的动态生成iframe方法
2014/05/05 Javascript
AngularJS基础知识
2014/12/21 Javascript
JavaScript之Object类型介绍
2015/04/01 Javascript
js+HTML5基于过滤器从摄像头中捕获视频的方法
2015/06/16 Javascript
Javascript基础_标记文字的实现方法
2016/06/14 Javascript
js数组去重的hash方法
2016/12/22 Javascript
详细分析jsonp的原理和实现方式
2017/11/20 Javascript
js正则相关知识点专题
2018/05/10 Javascript
vue实例的选项总结
2020/06/09 Javascript
记一次vue跨域的解决
2020/10/21 Javascript
Python socket网络编程TCP/IP服务器与客户端通信
2017/01/05 Python
python模拟登录并且保持cookie的方法详解
2017/04/04 Python
解决Python获取字典dict中不存在的值时出错问题
2018/10/17 Python
python获取时间及时间格式转换问题实例代码详解
2018/12/06 Python
Django实现分页显示效果
2019/10/31 Python
python绘制动态曲线教程
2020/02/24 Python
win10下python3.8的PIL库安装过程
2020/06/08 Python
将tf.batch_matmul替换成tf.matmul的实现
2020/06/18 Python
七年级政治教学反思
2014/02/03 职场文书
潘婷洗发水广告词
2014/03/14 职场文书
股指期货心得体会
2014/09/10 职场文书
群众路线查摆问题整改措施思想汇报
2014/10/10 职场文书
党的群众路线批评与自我批评发言稿
2014/10/16 职场文书
五一劳动节活动总结
2015/02/09 职场文书
初中毕业感言300字
2015/07/31 职场文书
Python代码,能玩30多款童年游戏!这些有几个是你玩过的
2021/04/27 Python
mysql的Buffer Pool存储及原理
2022/04/02 MySQL