javascript - 如何使用 for in 循环遍历仅打印第二个属性的对象?

标签 javascript object for-loop

目前我的 for in 循环打印出名字。如果我希望它只打印姓氏怎么办? 我将如何修改 for in 循环?

var friends = {};

friends.bill = {
  firstName: "Bill",
  lastName: "Gates",
  number: "(206) 555-5555",
  address: ['One Microsoft Way','Redmond','WA','98052']
};

friends.steve = {
  firstName: "Steve",
  lastName: "Jobs",
  number: "(408) 555-5555",
  address: ['1 Infinite Loop','Cupertino','CA','95014']
};

var list = function(obj) {
  for(var prop in obj) {
    console.log(prop);
  }
};

list(friends);

最佳答案

请阅读MDN - Working with objects 文档,从中您可以得出以下结论:

  1. objectName.propertyName 用于访问对象内的指定属性。在您的情况下,这将转换为:obj.bill.lastNameobj.steve.lastName
  2. 当处理一个对象内的多个对象时,就像使用前面的符号一样简单,同时循环访问对象。在这种情况下,obj[prop] 将提供 obj 中每个对象的每个实例。从那里访问对象属性如#1 中所述。

结果:

var list = function(obj) {
  for(var prop in obj) {
    console.log(obj[prop].lastName);
  }
};

关于javascript - 如何使用 for in 循环遍历仅打印第二个属性的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35002382/

相关文章:

arrays - 在 for 循环中设置命令

javascript - Vue.js 组件中的 Img 元素未渲染到 Laravel 生产环境中

javascript - 如何优化对象写入性能?

javascript - 在 PHP foreach 循环中重复 Javascript 函数

python - 根据条件从超大 (48GB) CSV 文件中提取行

javascript - 将数组转换为具有键/值对的对象

javascript - 导入 ES6 : Giving an Alias Name to the Package

javascript - orderByChild 和 startAt firebase 实时使用日期时间戳不返回数据

javascript - 我正在将参数从一个函数传递到reactJs中的另一个函数,但结果为空

javascript - Vue : Implementing Vue table search