使用Object.Keys迭代值

时间:2015-10-23 02:30:04

标签: javascript

我正在尝试迭代对象属性的值。 这是我的代码

var player =
{

    name: 'kaka',
    age: 33,
    address: '22 green street',
    sayHello: function () {
        console.log('my name is ' + this.name + "my age is " + this.age);
    }
}

var myProperties = Object.keys(player);

for (var i = 0; i < myProperties.length; i++) {
    console.log(myProperties[i]);

}

但它只显示属性而不显示值。 我如何查看'kaka' for name.. 谢谢等价值观。

2 个答案:

答案 0 :(得分:1)

您需要将键用作原始对象中的查找

for (var i = 0; i < myProperties.length; i++) {
    if(typeof player[myProperties[i]] !== 'function'){
            console.log(player[myProperties[i]]); 
    }  
}

最后,我不确定你为这个用例使用for in循环获得了多少创建和迭代密钥

答案 1 :(得分:0)

请注意,由于 Object.keys 返回一个数组,为方便起见,您可以使用 forEach 之类的迭代器:

Object.keys(player).forEach(function(key) {
  console.log(key + ': ' + player[key]);
});