【问题标题】:Is there a way to obtain object properties after parsing a JSON string [duplicate]解析JSON字符串后有没有办法获取对象属性[重复]
【发布时间】:2014-06-23 05:20:57
【问题描述】:

例如,如果变量 jsonstring 包含

{"prod_name":"GM","quantity":100,"price":54.5,"type":"Limit"}

对于类似的代码

   var obj= JSON.parse(jsonstring);

在不知道字符串内容的情况下,有没有办法提取属性/值名称?

【问题讨论】:

  • for ... in, Object.keys() ...

标签: javascript jquery json parsing


【解决方案1】:

您可以遍历对象属性。

for ( var prop in obj ) {
    if ( obj.hasOwnProperty(prop) ) {
        console.log( prop + ': ' + obj[prop] );
    }
}

【讨论】:

  • hasOwnProperty 并不是必须的。
  • 这种方式可以防止'走'原型链,只检查对象本身的属性。
  • @Andy,如果他们(或任何第三方脚本)扩展了 Object 原型,这是必要的。
  • 它是 JSON,所以我不同意。
【解决方案2】:

在 JavaScript 1.8.5 中,Object.getOwnPropertyNames 返回直接在给定对象上找到的所有属性的数组。

Object.getOwnPropertyNames ( obj )

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-25
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 2019-03-29
    • 2023-04-01
    • 1970-01-01
    • 2019-11-27
    相关资源
    最近更新 更多