JavaScript-显示整个对象和特定键及其值

时间:2017-04-04 17:53:07

标签: javascript object

我正在使用此代码

return new String(buf, "UTF-8"); // instead of return new String(buf);

现在我可以使用上面的代码显示对象var obj = { 'name':'Some Person Name', 'country':'Country of Some Person', 'age':1 } var storeVal = Object.keys(obj) for (var i = 0; i < storeVal.length; i++) { var storeLoop = storeVal[i] ; document.write('<pre>'+storeLoop+'</pre>'); } 的键,我也知道如何使用obj显示对象obj的值。我想知道如何使用上面的Object.values()循环显示整个对象obj,我不是在讨论for循环。我还想知道如何显示特定的,例如,如果我只想显示名称键价值,怎么做?我只使用JavaScript。没有jquery。

4 个答案:

答案 0 :(得分:2)

我建议使用反映其内容的变量名称,然后我建议首先声明所有变量,而不是例如for循环内部。

要获取对象属性的值,可以使用以下两种语法之一property accessor

object.property     // dot notation
object['property']  // bracket notation

要获取对象的值,可以使用

object.name  // 'Some Person Name'

&#13;
&#13;
var object = { name: 'Some Person Name', country: 'Country of Some Person', age: 1 },
    keys = Object.keys(object),
    value,
    i, 
    nameKey = 'name';

for (i = 0; i < keys.length; i++) {
    value = object[keys[i]];
    document.write('<pre>' + keys[i] + ': ' + value + '</pre>');
}

document.write('<hr><pre>' + nameKey + ': ' + object[nameKey] + '</pre>');
&#13;
&#13;
&#13;

答案 1 :(得分:1)

以下是一种方法:

&#13;
&#13;
var obj  =  {   'name':'Some Person Name',
                'country':'Country of Some Person',
                'age':1
            }
var storeVal = Object.keys(obj)

for (var i = 0; i < storeVal.length; i++) {
    var storeLoop = storeVal[i] + ': ' + obj[storeVal[i]];
    document.write('<pre>'+storeLoop+'</pre>');
}

// Just displaying a certain key:

document.write('<pre>Name: '+obj.name+'</pre>');
&#13;
&#13;
&#13;

答案 2 :(得分:0)

如果只是为了您并且您不想在HTML代码中输出它,则可以使用console.log(storeVal);并在浏览器控制台中浏览打印对象。

在此处查看更多内容:https://developer.mozilla.org/en-US/docs/Web/API/Console/log

答案 3 :(得分:0)

使用Object.entries(),请参阅MDN-Doc

基本示例:

var obj = { foo: 'bar', baz: 42 };
console.log(Object.entries(obj)); // [ ['foo', 'bar'], ['baz', 42] ]


你的代码:

var obj  =  {   'name':'Some Person Name',
                'country':'Country of Some Person',
                'age':1
            }

Object.entries(obj).forEach(([key, value]) => {
    // Do whatever you like with key and value
});