当前位置:  开发笔记 > 编程语言 > 正文

Javascript for/in循环遍历属性,而不是索引和返回字符串

如何解决《Javascriptfor/in循环遍历属性,而不是索引和返回字符串》经验,为你挑选了1个好方法。

好的,我有这个代码:

var room = [ { time: 0, people: 0 } ];

然后:

time = 5;
for( var i in room ) {
  if( room[i].time < time ){
    spliceIndex = i + 1;
  }
}
console.log(spliceIndex);

控制台显示:01- 这意味着1连接在一起,这意味着它i是一个字符串,而不是预期的整数.将索引转换为整数修复了问题,但我敲了几个小时......我能解释为什么会发生这种情况吗?我在Firefox 3.5和Safari 4上得到了这个.



1> Jani Hartika..:

因为for-in列出了对象属性,而不是数组索引.对象属性是字符串,数组索引显示为属性,只有它们是数字字符串.

推荐阅读
k78283381
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有