如何用Javascript和HTML格式化JSON?

杰伊·格雷(Jay Gray)

对于以下GoogleJSON-LD结构...

<script type="application/ld+json" id="datablock-1">
{
  "@context": "http://schema.org/",
  "@type": "Person",
  "honorificPrefix": "Dr",
  "givenName": "Albert",
  "familyName": "Einstein",
  "honorificSuffix": "PhD",
  "jobTitle": "Professor of Physics",
  "worksFor": [ {
      "@type": "EducationalOrganization",
      "department": "School of Science",
      "parentOrganization": "Princeton University",
      "address": [ {
          "@type": "PostalAddress",
          "streetAddress": "One Relativity Way",
          "addressCountry": "USA" } ]
    } ]
}
</script>

HTML+JavaScript作品:

<body>
    <dl><dt>Big Ideas</dt><dd id="dd-1"></dd></dl>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
    var data = $("#datablock-1").html();
    var json = JSON.parse(data);
    var people = json["worksFor"];
    for (i=0; i<=people.length; i++) {
        var a=json["givenName"];
        var b=json["familyName"];
        var c=json["honorificSuffix"];
        var d=json["worksFor"][i]["parentOrganization"];
        $('#dd-1').append("<dd>"+a+" "+b+", "+c+". "+" "+d+"."+" "+"</dd>");
    }
</script>
</body>

现在,我需要在对象中更深入一层,并添加有关的信息"@type": "PostalAddress"

但这HTML+JavaScript不起作用:

<body>
    <dl><dt>Big Ideas</dt><dd id="dd-1"></dd></dl>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
    var data = $("#datablock-1").html();
    var json = JSON.parse(data);
    var people = json["worksFor"]["address"];
    for (i=0; i<=people.length; i++) {
        var a=json["givenName"];
        var b=json["familyName"];
        var c=json["honorificSuffix"];
        var d=json["worksFor"][i]["parentOrganization"];
        var e=json["worksFor"]["address"][i]["streetAddress"];
        $('#dd-1').append("<dd>"+a+" "+b+", "+c+". "+" "+d+"."+" "+e+"</dd>");
    }
</script>
</body>

我究竟做错了什么?如何纠正错误?

保罗·斯坦利

难道您不改变条件就从顶部跳进邮政地址吗?我将您的people变量名更改为,worksFor因为这是您要迭代的内容,因为它看起来好像没有人atm列表。也许我错了?

<body>
    <dl><dt>Big Ideas</dt><dd id="dd-1"></dd></dl>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
    var data = $("#datablock-1").html();
    var json = JSON.parse(data);
    var worksFor= json["worksFor"];
    for (i=0; i<=worksFor.length; i++) {
        var a=json["givenName"];
        var b=json["familyName"];
        var c=json["honorificSuffix"];
        var d=json["worksFor"][i]["parentOrganization"];
        var e=json["worksFor"][i]["address"][0]["streetAddress"];//this line is changed
        $('#dd-1').append("<dd>"+a+" "+b+", "+c+". "+" "+d+"."+e+"</dd>");
    }
</script>
</body>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在HTML中格式化SPARQL查询时的JSON和JavaScript集成

来自分类Dev

如何用数字和小数格式化字符串?

来自分类Dev

如何用HTML和CSS格式化导航栏?

来自分类Dev

如何用指数因子格式化小数?

来自分类Dev

如何在javascript / jquery中使用逗号分隔符格式化和取消格式化美元金额?

来自分类Dev

如何用Javascript和HTML格式化JSON?

来自分类Dev

如何格式化JSON对象PHP

来自分类Dev

如何在JavaScript中格式化货币和时间

来自分类Dev

如何在HTML和Javascript的动态列表中显示格式化的HTML文本

来自分类Dev

在Javascript中转换和格式化JSON对象

来自分类Dev

如何用Java格式化字符串?

来自分类Dev

如何格式化JSON对象内部?

来自分类Dev

如何正确格式化JSON

来自分类Dev

格式化HTML中的SPARQL查询时的JSON和JavaScript集成

来自分类Dev

如何用Java格式化Twitter时间戳?

来自分类Dev

使用Javascript从JSON格式化日期

来自分类Dev

从json格式化html

来自分类Dev

如何用时间值格式化日期?

来自分类Dev

如何用perl格式化SQL语句(代码样式)

来自分类Dev

如何格式化和添加列?

来自分类Dev

如何用fdisk格式化USB驱动器?

来自分类Dev

如何用科学计数法格式化数字以在Javascript中显示更少的数字?

来自分类Dev

如何用JavaScript格式化大数字?

来自分类Dev

如何在 javascript 中格式化 JSON 输出

来自分类Dev

使用 javascript 格式化 JSON

来自分类Dev

如何使用 JavaScript 捕获和格式化表格数据?

来自分类Dev

如何用 + 号格式化正数

来自分类Dev

如何用整数和特殊字符格式化字符串

来自分类Dev

如何用数组格式化哈希表?