js有序数组合并_js array map

js有序数组合并_js array mapjavascript实现有序map

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

javascript实现有序map 示例 用法 代码根据网络代码改编 效率未知

只是根据数组方式记录顺序 需要其他功能自己改写吧 或者有更好办法可以告诉我

代码片.

function HashMap() { 
   
    //维护映射
    this.map = { 
   };
    //维护顺序
    this.arrayLink=[]
}
HashMap.prototype = { 
   
    put: function (key, value) { 
   // 向Map中增加元素(key, value)
        var numb=  this.arrayLink.indexOf(key)
        // console.log(numb)
        if ( numb==-1) { 
   
            this.arrayLink.push(key) ;
            numb=  this.arrayLink.indexOf(key)
        }
        // console.log(numb)
        // console.log(this.arrayLink)
        this.map[numb] = value;
    },
    get: function (key) { 
    //获取指定Key的元素值Value,失败返回Null
        var numb=  this.arrayLink.indexOf(key)
        if (this.map.hasOwnProperty(numb)) { 
   
            return this.map[numb];
        }else { 
   
            return null;
        }

    },
    remove: function (key) { 
    // 删除指定Key的元素,成功返回True,失败返回False
        var numb=  this.arrayLink.indexOf(key)
        this.arrayLink.splice(numb, 1, "-1")
        //喊头不含尾
        var arrayLinktt=this.arrayLink.slice(0, numb)
        var arrayLinktt1=this.arrayLink.slice(numb+1, this.arrayLink.length)
        this.arrayLink = [];
        this.arrayLink.concat(arrayLinktt)
        this.arrayLink.concat(arrayLinktt1)
        if (this.map.hasOwnProperty(numb)) { 
   
            return delete this.map[numb];
        }
        return false;
    },
    removeAll: function () { 
     //清空HashMap所有元素
        this.map = { 
   };
        this.arrayLink = [];
    },
    keySet: function () { 
    //获取Map中所有KEY的数组(Array)

        return this.arrayLink;
    }
};
HashMap.prototype.constructor = HashMap;
//使用
 var ttt=new HashMap()
  ttt.put(1,"3333")
  ttt.put(888,"232")
   //将生成html渲染进html
        var  asddddddd=ttt.keySet()
        for(var i in asddddddd) { 
   
            var  tmp= ttt.get(asddddddd[i]);
             console.log(tmp)

        }
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190190.html原文链接:https://javaforall.net

(0)
上一篇 2026年2月25日 下午6:22
下一篇 2026年2月25日 下午7:01


相关推荐

  • Win7 下安装Vagrant错误排查

    Win7 下安装Vagrant错误排查

    2021年9月12日
    45
  • 黑盒测试用例设计方法详解

    黑盒测试用例设计方法详解黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法、场景图法等。(一)等价类划分法定义:等价类划分法是把所有可能输入的数据,即程序的输入域划分策划国内若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。方法是一种重要的、常用的黑盒测试用例设计方法。等价类是指某个输入域的子集合。在该子集合中,各个输入数据…

    2022年6月6日
    29
  • ssl协议未开启是什么意思?如何解决?_ssl协议未开启怎么解决

    ssl协议未开启是什么意思?如何解决?_ssl协议未开启怎么解决本文给大家介绍一下著名的网络安全协议SSL,如果有需要的朋友可以参考学习,希望以下的分享对您的学习有所帮助。安全套接字协议(SecureSocketLayer,SSL)是web浏览器与Web服务器之间安全交换的信息的协议。提供两个基本的安全服务:鉴别与保密。SSL是Netscape于1994年开发的,后来成为了世界上著名的web安全机制,所有主要浏览器都支持SSL协议。SSL协议由两层组成,分…

    2025年6月23日
    6
  • DuplicateHandle用法

    DuplicateHandle用法The nbsp DuplicateHan Thereturnedd sprocessspac 从当前进程复制句柄到其他进程空间 ALLofthefoll Createa

    2026年3月19日
    2
  • 数据仓库基础介绍

    数据仓库基础介绍

    2021年11月27日
    50
  • 域渗透之NTLM Relay

    域渗透之NTLMRelay基础知识LLMNR概述链路本地多播名称解析(LLMNR)是一个基于协议的域名系统(DNS)数据包的格式,使得双方的IPv4和IPv6的主机来执行名称解析为同一本地链路

    2021年12月13日
    73

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号