[javascript]对象属性,遍历,“字典”

一直我以为下面这种写法是字典类型:

tt=new Array()
tt["mon"]=0
tt["tue"]=1

最近突然想到javascript应该也是有for...in这样的东西的吧,原来确实是有的。for...in的syntax是这样的

for (variable in object) 
  {... }

所以这货还是可以用来获取对象属性的?然后自己试了半天也没法把对象属性的值给弄出来,直到看到下面这里的例程:

for (var prop in obj) {
  console.log("obj." + prop + " = " + obj[prop]);
}

关键的地方就是obj[prop],所以说我们之前的tt["mon"]也是在用mon这个属性名称获取对应的值了?所以当我们设置tt["mon"]=1以后,tt这个数组的length并没有增加,因为我们没有往里面加元素,而是设置了tt这个对象的一个属性而已。


bottom line: 如果要获取对象一个属性的值:object["property"],如果要对一个对象的所有属性进行遍历for(var prop in obj){...},通过设置一个对象的属性,我们可以实现一个类似字典的东西。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,497评论 19 139
  • 对象 对象是动态的——可以新增属性也可以删除属性,但是对象经常用来模拟静态对象以及静态类型语言中的“结构体”。对象...
    Allen_HD阅读 1,872评论 0 1
  • 作者:clearbug原文地址:http://www.cnblogs.com/craftsman-gao/p/48...
    IT程序狮阅读 4,183评论 1 8
  • ❉ ❉ ❉ 昨天把火车偶遇的大叔寄苹果的感动发了朋友圈后,收到了无数温暖的留言。大都是评论这个世界还是好人多之类,...
    麦子轻扬阅读 2,910评论 3 5
  • 在孩子的成长过程中,妈妈起着至关重要的作用。但做一个合格的妈妈也是需要学习的,就如同孩子一样也是从“幼儿园”开始一...
    唐嘉阅读 2,669评论 0 1