javascript - 迭代对象值 - javascript

标签 javascript

我有以下对象。

{ "name": [ "Can't be blank" ], "league_id": [ "You already have a team in this league." ] }

我想打印这个:

Can't be blank
You already have a team in this league

基本上,我希望能够迭代对象的值。我怎样才能在 JavaScript 中做到这一点?

最佳答案

您的数据结构没有多大实际意义,因为您的属性值是其中只有一个元素的数组。虽然合法,但对于您显示的数据,将字符串作为值更有意义。

无论哪种方式, for/in 遍历对象将允许您迭代键。

当前结构:

let obj = { 
     "name": ["can't be blank"], 
     "league_id": ["You already have a team in this league."] 
};

for(var key in obj){
  console.log(obj[key][0]); // Here, you have to index the property value, which is an array
}

删除数组后:

let obj = { 
     "name": "can't be blank", 
     "league_id": "You already have a team in this league." 
};

for(var key in obj){
  console.log(obj[key]); // Here, you can access the key value directly
}

您还可以使用Object.keys(obj) ,以及 .forEach() 方法调用,这是一种较新的技术:

let obj = { 
     "name": ["can't be blank"], 
     "league_id": ["You already have a team in this league."] 
};

Object.keys(obj).forEach(function(key){
  console.log(obj[key][0]); // Here, you have to index the property value, which is an array
});

关于javascript - 迭代对象值 - javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50547252/

相关文章:

javascript - 使 React 图片库对 SEO 友好的策略

javascript - 购物 list 应用程序 : using checkboxes to cross off items

javascript - 在无状态组件中使用 Flatlist 响应 native 导航

javascript - 简单的待办事项列表 : Issue on adding "None" when list is empty, 或在添加至少一项时将其删除。更好的解决方案是什么?

JavaScript 未捕获类型错误 : Cannot convert undefined or null to object

javascript - Angular Directive(指令)表行问题

javascript - 如何在 Ember 中没有 Controller 的情况下更改查询参数?

javascript - 这个函数的性能可以变得更快吗?

javascript - 像这样的菜单语言

javascript - 禁用 JavaScript 时单选按钮 onClick