js实现的map方法详解编程语言

 

    /**  
     *   
     * 描述: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;   
    }  

 

<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> 

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/13262.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论