【问题标题】:Object key values prints randomly对象键值随机打印
【发布时间】:2018-08-08 08:12:04
【问题描述】:

大家,我有一个这样的对象

var days = {
  '2018-08-06': 1,
  '2018-08-07': 2, 
  '2018-08-08': 3,
  '2018-08-09': 4,
  '2018-08-10': 5   
};

我想打印键的值,所以我尝试了

for( const day in days ) {
  console.log(days[day]);
}

它会打印,但有时会随机打印。谢谢你的建议。

【问题讨论】:

  • 你的对象首先是无效的。请更正它(键值对应以逗号分隔)。并且循环遍历 Object 属性确实可以正确打印值。 stackblitz.com/edit/…

标签: typescript javascript-objects key-value


【解决方案1】:

您可以使用以下方法

Object.keys:将返回给定对象属性名称的数组

var days = {
  '2018-08-06': 1,
  '2018-08-07': 2, 
  '2018-08-08': 3,
  '2018-08-09': 4,
  '2018-08-10': 5   
};

Object.keys(days).forEach(function (day) {
   console.log(days[day])
});

Object.values:将返回给定对象属性值的数组

Object.values(days).forEach(function (day) {
  console.log(day)
})

Object.entries:将返回一个包含键值对的数组数组

Object.entries(days).forEach(function (entry) {
  console.log(entry[1])
})

而且for in 也应该可以工作

for (let day in days) {
 if (days.hasOwnProperty(day)) {
   console.log(days[day])
 }
}

【讨论】:

    猜你喜欢
    • 2016-05-13
    • 2013-05-04
    • 2018-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-06
    相关资源
    最近更新 更多