前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >浅谈数据结构 - 字典

浅谈数据结构 - 字典

作者头像
web前端教室
发布2018-02-06 11:24:01
9210
发布2018-02-06 11:24:01
举报
文章被收录于专栏:web前端教室web前端教室

浅淡,真的是很浅。Orz..

先摆出定义,这里的字典是啥样的?

是以键-值对形式保存数据的一种结构。

现实中比较典型的例子,就是以前的电话本。你想找一个单位的电话,就先找那个单位的名字,名字如果找到了,你也就找到了它的电话号。

这里你查找的“单位的名字”,就是键;它的电话号,就是值。

JavaScript中的Object对象,它就是以字典的形式被设计出来的。例如:

代码语言:js
复制
var obj = {
 name : '张三'
}

这就是一个对象了,它的键是name;它的值是张三,它俩放在一起就是一个键值对。

现在来实现一个简单的dict类:

然后再添加一个count()方法,用来统计数量的。

这个count()方法,相信各位读者都能正确的,把它添加到Dict中并被正常调用的。

在这个count()方法中,我们可以看到,虽然是使用了for循环,但并没有使用常见的[]进行键值的引用 ,而是使用了(),并且也没有常见的...keys[i]的键值引用写法,而是使用了Object.keys(obj),这个方法的参数是一个对象返回值是获得这个对象的所有可枚举的属性。

在本例中,obj就是this.store,自然就输出了add()方法添加的内容了。

这个方法是定义ECMAScript5中的,直到现在,依然也不是所有的浏览器都支持它。但是现在ECMAScript6都已经出来了。。。

不管怎么样,现在已经是用JS实现了一个数据结构-字典了。

javascript数据结构之基数排序浅淡

javascript实现最基本、最简单的继承

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-02-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 web前端教室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档