`
jinhonglin001
  • 浏览: 14446 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

js- 哈希表的简单应用

 
阅读更多

        去除数组中冗余元素,并统计个数是常见的问题,有好几种方法可以解决,但通过哈希表解决是一个高效率的方法,下面是这几天的小小收获简单分享一下。

        下面一些一般的方法:

 // 声明对象 
var hashTable = new Object();  
// 添加
function add(key,value)
{
 // 判断key是否存在
 if(key in hashTable)
{
       alert("key已经存在");
 }
       hashTable[key] = value;
 }
  //删除
 function del(key)
{
        delete(hashTable[key]);
        alert("删除成功");
 }
    // 取值
 function getValue(key)
{
       alert(hashTable[key]);
 }
 // 循环所有值
 function getAll()
{
   for(var k in hashTable)
       {
         document.write(k+":" +hashTable[k] + "<br />");
        }
}

 下面是一些通过pos机的案例,我们需要了解哈希表是一种数据结构,是一种利用键值对存储并检索数据的一种非线性结构,可以通过键快速定位到数据。

//声明对象
var hash = {  };
var count = 0 ;

var arr =[];
 

 添加元素进入哈希表,也可以利用返回值来实现,当哈希表中没有添加的元素时,返回undefined

//inputs 为需要统计的数组
for(var i = 0 ; i!= inputs.length ; i++)
    {       //根据返回值添加元素
          if( hash[inputs[i].barcode] == undefined)
            {            	
                hash[inputs[i].barcode] = 1; 
				                
            }
            else 
            {            	
                hash[inputs[i].barcode] ++;
              	// continue;
                //console.log(hash[inputs[i].barcode]);
            }
    }

 初学者当遇到问题时,要学会自己去解决,培养良好的习惯,处理问题的能力。
 

 

分享到:
评论

相关推荐

    hash-tables-app:简单的React App可显示哈希表的行为和性能

    该应用程序已进行了解释设置首先,安装依赖项: npm install 您可以运行gulp任务来转换scss文件npm run watch 并运行它: npm run start 该项目是通过引导的。

    应用多线程 哈希表 正则 JS等 某宝数据过滤软件适合新手学习-易语言

    应用多线程 哈希表 正则 JS等,某宝数据过滤软件,适合新手学习参考。虽然简单,但是,是商用成品软件,现在很多工作室还都在使用!本人也是才学习 易语言 几个月,边学边写的,过滤速度还是挺快的。感谢大神优化...

    JavaScript王者归来part.1 总数2

     11.4.5 框架的应用--多页签显示   11.4.5.1 什么是页签   11.4.5.2 页签的实现--创建一个包含页签的页面   11.5 表单和表单对象   11.5.1 Form对象及其范例   11.5.2 定义表单元素   11.5.3 客户端...

    若干源程序资料12.rar

    2012-06-11 21:44 0 哈希表实例.zip 2012-06-11 21:13 1,001,214 坦克游戏源代码.zip 2012-06-11 21:17 183,973 基于ATmega8 的ucos-II应用.rar 2012-06-11 21:01 12,345,799 基于FGPA的PCM编译码模块设计.zip 2012-...

    程序天下:JavaScript实例自学手册

    第22章 流行应用:AJAX和Property的应用技巧 22.1 实现关机效果的界面 22.2 关机特效(二) 22.3 评星效果 22.4 输入框自动完成功能 22.5 Ajax效果的字符串过滤 22.6 Gmail右上角的Loading效果 22.7 使用XMLHTTP获取...

    《程序天下:JavaScript实例自学手册》光盘源码

    第1章 页面特效 ...1.2 页面自动最大化 1.3 页面自动刷新 1.4 页面的后退、刷新、前进 1.5保护网页源代码 1.6 保护自己的网页不被放入框架 ...22.16 JavaScript制作哈希表 第23章 其他技巧及特效 23.1 ...

    trelloSol:我对Trello Node.JS Developer Job应用程序的解决方案

    检查问题陈述后,我知道我应该破解哈希表。 我知道最简单的方法是使用蛮力技术。 我从事过网络安全研究,发现哈希函数并不是一个非常复杂的函数,因此我知道通过检查一系列候选值的哈希值输出,可以找到一种更有效...

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    3.XML的简单应用。 恭喜你!你已经不再对XML一无所知,并且已经走在了网络技术的前沿。整个学习过程好象并不很难哦:) 五.Meta数据(Metadata)---专业的XML使用者会使用meta数据来工作。 在HTML中我们知道可以使用...

    transactions-table:使用React.js构建简单的交易表

    生成被最小化,并且文件名包括哈希值。 您的应用已准备好进行部署! 有关更多信息,请参见关于的部分。 yarn eject 注意:这是单向操作。 eject ,您将无法返回! 如果您对构建工具和配置选择不满意,则可以随时...

    qBittorrent-dashboard:简单的ygg仪表板,轻松显示您的帐户比例

    最小化构建,文件名包含哈希。 您的应用已准备好进行部署! 有关更多信息,请参见有关的部分。yarn eject 注意:这是单向操作。 eject ,您将无法返回! 如果您对构建工具和配置选择不满意,则可以随时eject 。 此...

    vc++ 应用源码包_1

    DOM应用---遍历网页中的元素 dshowplayer 媒体播放器的实现,实现了VMR7、VMR9、EVR方式。 DSoundManager 实现了声音管理。 Excel文件的导入和导出操作 主要的实现在CMyExcel类中。 expclass_src dll库的演示。 ...

    harddrive-party:对等媒体文件索引和文件共享

    对等方通过使用分布式哈希表上的公共群组名称在私人或半私人“聚会”上“开会”来找到彼此。 没有公共的,开放的网络-要连接到另一个对等方,您要么需要知道他们的公钥,要么都必须连接到具有相同名称的“群”。 这...

    vc++ 应用源码包_2

    DOM应用---遍历网页中的元素 dshowplayer 媒体播放器的实现,实现了VMR7、VMR9、EVR方式。 DSoundManager 实现了声音管理。 Excel文件的导入和导出操作 主要的实现在CMyExcel类中。 expclass_src dll库的演示。 ...

    vc++ 应用源码包_6

    DOM应用---遍历网页中的元素 dshowplayer 媒体播放器的实现,实现了VMR7、VMR9、EVR方式。 DSoundManager 实现了声音管理。 Excel文件的导入和导出操作 主要的实现在CMyExcel类中。 expclass_src dll库的演示。 ...

    C#基类库大全下载--苏飞版

    帮助输出简单的JS代码 4.最新的皮肤帮助类 UI_Misc_Helper JavaScript|Jquery相关 1.jQuery.cookie帮助类 访问系统相关 1.C#计算机信息类ComputerInfo 实现了计算机的信息获取功能,计算机名,IP,硬盘信息,...

    vc++ 应用源码包_5

    DOM应用---遍历网页中的元素 dshowplayer 媒体播放器的实现,实现了VMR7、VMR9、EVR方式。 DSoundManager 实现了声音管理。 Excel文件的导入和导出操作 主要的实现在CMyExcel类中。 expclass_src dll库的演示。 ...

    vc++ 应用源码包_3

    DOM应用---遍历网页中的元素 dshowplayer 媒体播放器的实现,实现了VMR7、VMR9、EVR方式。 DSoundManager 实现了声音管理。 Excel文件的导入和导出操作 主要的实现在CMyExcel类中。 expclass_src dll库的演示。 ...

    safety-plan-testing:这是对应用程序创建个性化安全计划的一些想法的综合测试

    这是对应用程序创建个性化安全计划的一些想法的综合测试。 它建立在 特征 使用 webpack 编译 React和 jsx React路由器 样式表可以是 CSS、LESS、SASS、Stylus 或混合 嵌入式资源(如图像或字体)在适当时使用 Data...

    movies-app:在ReactJs中创建的简单应用程序,其中显示电影列表。 您可以标记喜欢的任何电影,也可以从表中删除电影

    生成被最小化,并且文件名包括哈希值。 您的应用已准备好进行部署! 有关更多信息,请参见关于的部分。npm run eject 注意:这是单向操作。 eject ,您将无法返回! 如果您对构建工具和配置选择不满意,则可以随时...

    lrucacheleetcode-let_it_code:这是一个简单的存储库,为一些leetcode.com问题和简单的应用程序模板提供现成

    问题的现成解决方案和简单的应用程序模板。 要求:Node.js v. 14.0.0 解决了: 大批 细绳 哈希 数学 树 堆栈和队列 链表 联合查找 图形 SQL 前端 使用 html 和 css 创建菱形 使用html和css创建半圆 使用 html 和 css...

Global site tag (gtag.js) - Google Analytics