js实现的map方法

来源:互联网 发布:淘宝云标签考试 编辑:程序博客网 时间:2024/06/06 09:45
/** *  * 描述:js实现的map方法 * @returns {Map} */function Map(){ var struct = function(key, value) {  this.key = key;  this.value = value; };// 添加map键值对 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); };//  根据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; };//   根据key删除 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);  } };//   获取map键值对个数 var size = function() {  return this.arr.length; };// 判断map是否为空   var isEmpty = function() {  return this.arr.length <= 0; }; this.arr = new Array(); this.get = get; this.put = put; this.remove = remove; this.size = size; this.isEmpty = isEmpty;}

使用方法和java中Map类同

<script type="text/javascript">var map=new Map();map.put("num",1);map.put("ss","wss");alert(map.size());alert(map.get("num"));paraArr.remove("num");alert(map.size());alert(map.get("num"));</script>


 

0 0
原创粉丝点击