访问和遍历JSON文件

时间:2019-06-21 15:31:29

标签: javascript arrays json

大约是basil.js。我尝试从JSON文件中获取数据。文件data.json如下所示:

   {
      "user":"Hayyim",
      "datum":"12. April",
      "content":"# indien # wahlen",
      "sharedcontent":"nzz.chIndien: Gr\u00f6sste Wahl der Welt - logistische HerausforderungIn Indien beginnt am Donnerstag die Parlamentswahl. Sie dauert sechs Wochen. Es gibt 900 Millionen Stimmberechtigte und 11 Millionen Wahlhelfer.",
      "sharedimage":"https:\/\/external-frx5-1.xx.fbcdn.net\/safe_image.php?d=AQCVZce1YnnCI32G&w=540&h=282&url=https%3A%2F%2Fimg.nzz.ch%2FC%3DW5760%2CH3024%2CX0%2CY408%2FS%3DW1200M%2CH630M%2FO%3D75%2FC%3DAR1200x630%2Fhttps%3A%2F%2Fnzz-img.s3.amazonaws.com%2F2019%2F4%2F10%2Fc0967283-706b-4254-88b4-4bd1e994e8ef.jpeg%3Fwmark%3Dnzz&cfs=1&upscale=1&fallback=news_d_placeholder_publisher&_nc_hash=AQAyTO8QmCpcQpvk",
      "comments":[

      ]
   },
   {
      "user":"Hayyim",
      "datum":"11. April",
      "content":"# israel # wahlen",
      "sharedcontent":"faz.net| Von FAZ.NET - Frankfurter Allgemeine ZeitungNetanjahu-Herausforderer: Gantz gibt sich geschlagenErst feierte er sich noch als Sieger, nun hat Netanjahus Herausforderer Benny Gantz eingesehen, dass er die Parlamentswahl in Israel verloren hat. Nun beginnen die Koalitionsgespr\u00e4che.",
      "sharedimage":"https:\/\/external-frx5-1.xx.fbcdn.net\/safe_image.php?d=AQAFQY0fbKU3hH9H&w=540&h=282&url=https%3A%2F%2Fmedia1.faz.net%2Fppmedia%2Faktuell%2F1514615769%2F1.6134923%2Farticle_multimedia_overview%2Fhat-seine-niederlage.jpg&cfs=1&upscale=1&fallback=news_d_placeholder_publisher&_nc_hash=AQCGbgGQxkt-pZra",
      "comments":[
         {
            "comment":"https:\/\/www.akweb.de\/ak_s\/ak588\/30.htm",
            "comment_user":"Hayyim"
         }
      ]
   },

我使用以下代码在javascript中访问或加载JSON文件:

var json_file = b.loadString('data.json');
var obj = b.JSON.decode(json_file); 

然后,我想创建一个循环遍历JSON文件并使用b.text()返回以下内容的循环:

11. April
# israel # wahlen
faz.net| Von FAZ.NET - Frankfurter Allgemeine ZeitungNetanjahu-Herausforderer: Gantz gibt sich geschlagenErst feierte er sich noch als Sieger, nun hat Netanjahus Herausforderer Benny Gantz eingesehen, dass er die Parlamentswahl in Israel verloren hat. Nun beginnen die Koalitionsgespr\u00e4che.
https:\/\/www.akweb.de\/ak_s\/ak588\/30.htm

然后返回下一个对象。

此外,我想使用"sharedimage"将图像(b.image())返回为实际图像。

我看了here,但不明白。请问问题是否不清楚。

1 个答案:

答案 0 :(得分:2)

尝试一下:

@Entity
public class Message {

    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE)
    private long id;
    private Date created;
    private Date updated;
    @OneToOne
    private User creator;
    @OneToOne
    private Project project;
    private String content;

    public Message() {

    }
    //getter and setter
   }

在这里,我认为var json_file = b.loadString('data.json'); var obj = JSON.parse(json_file); for(let item of obj) { console.log(item.user); console.log(item.datum); ..... } 实际上已经加载了您的json文件

PS:请注意,b.loadString属性是一个数组,因此如果要访问每个子项,则必须遍历它