开发者社区> 问答> 正文

如何在Javascript中获取数组键?

我用以下代码创建了一个数组:

var widthRange = new Array(); widthRange[46] = { min:0, max:52 }; widthRange[66] = { min:52, max:70 }; widthRange[90] = { min:70, max:94 }; 我想循环获取每个值46、66、90。我尝试过,for (var key in widthRange)但这给了我很多额外的属性(我假设它们是对象上的函数)。我不能使用常规的for循环,因为这些值不是连续的。 问题来源于stack overflow

展开
收起
保持可爱mmm 2020-02-08 20:25:51 455 0
1 条回答
写回答
取消 提交回答
  • 您需要调用该hasOwnProperty函数以检查该属性是否实际上是在对象本身上定义的(相对于其原型),如下所示:

    for (var key in widthRange) { if (key === 'length' || !widthRange.hasOwnProperty(key)) continue; var value = widthRange[key]; } 请注意,您需要单独检查length。 但是,您根本不应该在这里使用数组。您应该使用常规对象。所有Javascript对象均用作关联数组。

    例如:

    var widthRange = { }; //Or new Object() widthRange[46] = { sel:46, min:0, max:52 }; widthRange[66] = { sel:66, min:52, max:70 }; widthRange[90] = { sel:90, min:70, max:94 };

    2020-02-08 20:26:03
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
JavaScript异步编程 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载