广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >Javascript中怎么实现一个伪哈希表
  • 836
分享到

Javascript中怎么实现一个伪哈希表

2024-04-02 19:04:59 836人浏览 八月长安
摘要

这期内容当中小编将会给大家带来有关javascript中怎么实现一个伪哈希表,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。javascript中实现哈希表的代码:1 fu

这期内容当中小编将会给大家带来有关javascript中怎么实现一个伪哈希表,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

javascript中实现哈希表的代码:

1 function Hashtable() 
2 {
3   this._hash = {};
4   this._count = 0;
5   this.add = function(key, value) 
6   {
7       if (this._hash.hasOwnProperty(key)) return false;
8       else { this._hash[key] = value; this._count++; return true; }
9   }
10   this.remove = function(key) { delete this._hash[key]; this._count--; }
11   this.count = function() { return this._count; }
12   this.items = function(key) { if (this.contains(key)) return this._hash[key]; }
13   this.contains = function(key) { return this._hash.hasOwnProperty(key); }
14   this.clear = function() { this._hash = {}; this._count = 0; }
15 }

实现起来很简单,我们在function中定义了一个_hash对象,该对象有一个属性key,我们可以给这个属性赋值,hasOwnProperty方法是javascript提供的方法,用于返回指定的对象中是否包含某个属性。同时我们在该function中还定义了一个_count对象,用于记录Hashtable中的数据个数,因为我们不想每次获取Hashtable中的数据个数时都要通过一个内置的循环来计数,这样开销就会小一些,前面说了,哈希算法的一个基本特性就是效率高。delete语句在javascript中用于销毁一个对象。

下面是使用该Hashtable的一些例子:

1 var hashCompany = new Hashtable();
2
3 //向Hashtable中添加键值对
4 function FillData(arr) {
5     hashCompany.clear();
6
7     for (var i = 0; i ﹤ arr.length - 1; i++) {
8         if (arr[i] != "") {
9             t = arr[i].split("`");
10             if (t.length ﹥ 2) {
11                 if (!hashCompany.contains(t[0].trim())) {
12                     hashCompany.add(t[0].trim(), t[1]);
13                 }
14             }
15         }
16     }
17 }
18
19 //遍历Hashtable并取出值
20 function GetDataFromHash() {
21     var s;
22     if (hashCompany.count ﹥ 0) {
23         for (var i in hashCompany._hash) {
24             s += i + "|";
25         }
26     }
27
28     if (s.length ﹥ 0) {
29         s = s.substring(0, s.length - 2);
30     }
31
32     return s;
33 }

代码比较简单,这里就不再多加说明了,其中用到了一个trim函数,下面补上。

//采用正则表达式去除字符串两端的空格,匿名函数用于扩展String对象的方法
String.prototype.trim = function() { return this.replace(/(^\s*)|(\s*$)/g, ""); }

上述就是小编为大家分享的Javascript中怎么实现一个伪哈希表了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网node.js频道。

--结束END--

本文标题: Javascript中怎么实现一个伪哈希表

本文链接: https://www.lsjlt.com/news/70059.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Javascript中怎么实现一个伪哈希表
    这期内容当中小编将会给大家带来有关Javascript中怎么实现一个伪哈希表,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。javascript中实现哈希表的代码:1 fu...
    99+
    2022-10-19
  • c++中怎么实现一个哈希慢算法
    c++中怎么实现一个哈希慢算法,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。首先,我定义了一个哈夫曼树结点:class hNode{ public:  friend&...
    99+
    2023-06-03
  • 怎么在Java中实现哈希表
    本篇文章为大家展示了怎么在Java中实现哈希表,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、哈希表头插法放入元素public class HashBuck {&nb...
    99+
    2023-06-15
  • Java哈希表和有序表怎么实现
    本文小编为大家详细介绍“Java哈希表和有序表怎么实现”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java哈希表和有序表怎么实现”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。哈希表(HashMap)hash查...
    99+
    2023-07-06
  • C++哈希表之线性探测法怎么实现
    今天小编给大家分享一下C++哈希表之线性探测法怎么实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1、哈希表-线性探测法理...
    99+
    2023-06-30
  • Golang官方中的一致性哈希组件怎么实现
    这篇“Golang官方中的一致性哈希组件怎么实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Golang官方中的一致性哈希...
    99+
    2023-07-05
  • 怎么使用PHP实现分布算法之一致性哈希算法
    这篇文章主要介绍怎么使用PHP实现分布算法之一致性哈希算法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!传统算法缺陷对于服务器分布,我们要考虑的东西有如下三点:数据平均分布,查找定位准确,降低宕机影响。传统算法一般是...
    99+
    2023-06-15
  • CSS3中怎么实现一个nth-child()伪类选择器
    今天就跟大家聊聊有关CSS3中怎么实现一个nth-child()伪类选择器,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。语法: :nth-child...
    99+
    2022-10-19
  • PHP中怎么实现一个表单
    PHP中怎么实现一个表单,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。$_GET 和 $_POST 用于检索表单中的值,比如用户输入。PHP表单处理PHP表单实例:<&n...
    99+
    2023-06-17
  • 怎么利用Java实现一个希尔排序算法
    这期内容当中小编将会给大家带来有关怎么利用Java实现一个希尔排序算法,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Java 实现希尔排序Java代码    pub...
    99+
    2023-05-31
    java ava 希尔排序
  • JavaScript中怎么实现一个队列
    JavaScript中怎么实现一个队列,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1.  队列数据结构如果你喜欢四处旅行,肯定在火...
    99+
    2022-10-19
  • 怎么在html中实现一个表格
    怎么在html中实现一个表格?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。html做表格的方法:首先新建一个html,并在“”中间填入表格内容;然后在“”中间输入样式表的样式;...
    99+
    2023-06-14
  • Python中怎么实现一个透视表
    本篇文章为大家展示了Python中怎么实现一个透视表,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1. 数据为帮助大家更好地理解,在讲解如何使用pivot_table( )实现透视表前,我们先导入示...
    99+
    2023-06-16
  • JavaScript中怎么实现一个计时器
    这期内容当中小编将会给大家带来有关JavaScript中怎么实现一个计时器,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。window.setInterval(); 这个方...
    99+
    2022-10-19
  • JavaScript中怎么实现一个二叉堆
    本篇文章为大家展示了JavaScript中怎么实现一个二叉堆,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。前言二叉树(Binary  Tree)是一种树形...
    99+
    2022-10-19
  • JavaScript中怎么实现一个栈结构
    JavaScript中怎么实现一个栈结构,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.1.什么是数据结构数据结构就是在计算...
    99+
    2022-10-19
  • C++中怎么实现一个单向链表
    C++中怎么实现一个单向链表,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。C++单向链表实现代码:#include < iostream>&...
    99+
    2023-06-17
  • Echarts中怎么实现一个树形图表
    Echarts中怎么实现一个树形图表,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。树图主要用来可视化树形数据结构,是一种特殊的层次类型。实现方法,将series->t...
    99+
    2023-06-20
  • JavaScript中怎么实现一个插件系统
    这篇文章给大家介绍JavaScript中怎么实现一个插件系统,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。构建一个插件系统让我们从一个名为BetaCalc的示例项目开始。BetaCal...
    99+
    2022-10-19
  • Javascript中怎么实现一个私有成员
    这篇文章给大家介绍Javascript中怎么实现一个私有成员,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Javascript中闭包的特性,从而彻底解决了Javascript私有成员的...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作