【问题标题】:Print everything in a JSON object打印 JSON 对象中的所有内容
【发布时间】:2020-02-05 13:20:20
【问题描述】:

我有一个如下所示的 JSON 对象:

[
  objA={
    "name" : "Joe",
    "age" : 22,
    "hobbies" : ["Skiing", "Running"]
  },
  objB={
    "name" : "Rebecca",
    "age" : 34,
    "hobbies" : ["Football", "Archery"]
  }
]

我在编写将打印每个对象的名称、年龄和爱好的 for 循环时遇到问题。

我正在使用以下文件从另一个文件中获取 JSON 对象:

$.getJSON("data/hobbies.json", test);

其中test 是数据将用于的函数。

我怎样才能做到这一点?

【问题讨论】:

  • 期望的输出是什么?如果您只想以 JSON 格式输出所有内容,请使用 JSON.stringify另外,这是一个 JavaScript 对象,而不是 JSON 对象(stackoverflow.com/questions/2904131/…
  • 只打印格式名称:name,年龄:age,爱好:爱好列表 @Seblor
  • 如果您不关心格式,那么JSON.stringify 应该足够了。

标签: arrays json for-loop


【解决方案1】:
    let object = [
       objA={
        "name" : "Joe",
        "age" : 22,
        "hobbies" : ["Skiing", "Running"]
      },
      objB={
        "name" : "Rebecca",
        "age" : 34,
        "hobbies" : ["Football", "Archery"]
      }
    ]

    object.forEach((data)=>{
        console.log(data)
        //console.log(data.name)
        //console.log(data.age)
        //console.log(data.hobbies)
    })

复制并粘贴代码到这里试试。 https://repl.it/languages/javascript

输出:

{ name: 'Joe', age: 22, hobbies: [ 'Skiing', 'Running' ] } { name: 'Rebecca', age: 34, hobbies: [ 'Football', 'Archery' ] }

【讨论】:

    【解决方案2】:
    var a = [
        objA={
            "name" : "Joe",
            "age" : 22,
            "hobbies" : ["Skiing", "Running"]
        },
        objB={
            "name" : "Rebecca",
            "age" : 34,
            "hobbies" : ["Football", "Archery"]
        }
    ];
    a.forEach(function (data) {
        console.log('name:', data.name);
        console.log('age:', data.age);
        console.log('hobbies:', data.hobbies);
    });
    

    结果:

    • 姓名:Joe 年龄:22 爱好:[“滑雪”、“跑步”]
    • 姓名:Rebecca 年龄:34 爱好:[“足球”、“射箭”]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-16
      • 1970-01-01
      • 2016-03-06
      • 1970-01-01
      • 2015-01-21
      • 1970-01-01
      • 2019-03-11
      • 1970-01-01
      相关资源
      最近更新 更多