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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C# ACCESS数据库操作类

    这个是针对ACCESS数据库操作的类,同样也是从SQLHELPER提取而来,分页程序的调用可以参考MSSQL那个类的调用,差不多的,只是提取所有记录的数量的时候有多一个参数,这个需要注意一下!推荐:

    2021年12月27日
    40
  • 数据中心的变化需要更多有效冷却方式[通俗易懂]

    数据中心的变化需要更多有效冷却方式[通俗易懂]数据中心的变化需要更多有效冷却方式

    2022年4月20日
    39
  • Enterprise Library 4.0

    Enterprise Library 4.0微软发布了支持VisualStudio2008的新版本EnterpriseLibrary4.0,同时也发布了他们的依赖注入容器Unity应用程序块的1.1版本。模式与实践团队的产品经理GrigoriMelnik宣布发布EnterpriseLibrary4.0和Unity1.1更新,详细描述了所有新特性。MSDN开发中心的新闻稿解释了这个版本对开发人员的意义:此次发布…

    2022年10月20日
    2
  • 关闭单节点oracle,oracle rac 如何正确的删除单个节点的actionlist[通俗易懂]

    关闭单节点oracle,oracle rac 如何正确的删除单个节点的actionlist[通俗易懂]1节点2使用dbca删除一个节点2节点1alterdatabasedisablethread2;3节点1验证是否已经删除一个节点数据库[03:49:06oracle(db)@rac1~]$srvctlconfigdatabase-dprodDatabaseuniquename:prodDatabasename:prodOraclehome:/u01/app/or…

    2022年10月19日
    2
  • 操作系统之引导

    系统引导环节是操作系统启动过程中的最重要环节,也是最容易出问题的环节之一。按照个人计算机的硬件标准,引导环节发生在计算机的硬件系统检测完毕之后。具体的引导工作,是由BIOS完成的。BIOS维持一个可用

    2021年12月25日
    50
  • 免费mysql服务器_mysql初始化失败

    免费mysql服务器_mysql初始化失败1.在mysql数据库里面想再建立一个用户,可是提示错误?​在mysql命令行里面,想用“createuser”命令建立一个名为“developer”,密码为“123456”的mysql用户。语句:createuser’developer’@’localhost’identifiedby’123456′;可是执行之后提示:ERROR1396:OperationCREATEUSER…

    2022年8月12日
    8

发表回复

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

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