浏览复杂 JSON

Browsing a complex JSON

首先,请原谅我的英语不好,我是法国人。

我来找你是因为我有问题。我想帮助浏览一个复杂的 JSON 对象,在 Javascript 中有一个循环(因为它是用 JOINTJS 生成的),但我做不到。我可以通过 json [ "cells"] ["7"] ["attrs"] ["text"] ["text"] 手动完成。这是一个元素的 JSON 示例:

{"cells":[
{
    "type":"basic.Image",
    "position":{
        "x":50,
        "y":350
    },
    "size":
    {
        "width":100,
        "height":50
    },
    "angle":0,
    "id":"4a2802a8-0bd6-4d06-9343-921092a1decd",
    "z":1,
    "attrs":{
        "text":{
            "text":"230004",
            "fill":"black"
        },
        "image":{
            "xlink:href":"/uploads/documents/computer.png",
            "width":100,
            "height":50
        }
    }
}
]}

并解析 JSON :

我会得到 "text":“230004”(根据项目而变化)。

提前感谢您的帮助!

您可以像这样访问对象:obj.cells[7].attrs.text.text,其中 obj 是保存对象的变量。

另请注意,由于 cells 属性 包含一个数组,您可以遍历该数组并分别获取每个单独的值,如下所示:

var obj = {
  "cells": [{
    "type": "basic.Image",
    "position": {
      "x": 50,
      "y": 350
    },
    "size": {
      "width": 100,
      "height": 50
    },
    "angle": 0,
    "id": "4a2802a8-0bd6-4d06-9343-921092a1decd",
    "z": 1,
    "attrs": {
      "text": {
        "text": "230004",
        "fill": "black"
      },
      "image": {
        "xlink:href": "/uploads/documents/computer.png",
        "width": 100,
        "height": 50
      }
    }
  }, {
    "type": "basic.Image",
    "position": {
      "x": 50,
      "y": 350
    },
    "size": {
      "width": 100,
      "height": 50
    },
    "angle": 0,
    "id": "4a2802a8-0bd6-4d06-9343-921092a1decd",
    "z": 1,
    "attrs": {
      "text": {
        "text": "230005",
        "fill": "black"
      },
      "image": {
        "xlink:href": "/uploads/documents/computer.png",
        "width": 100,
        "height": 50
      }
    }
  }, {
    "type": "basic.Image",
    "position": {
      "x": 50,
      "y": 350
    },
    "size": {
      "width": 100,
      "height": 50
    },
    "angle": 0,
    "id": "4a2802a8-0bd6-4d06-9343-921092a1decd",
    "z": 1,
    "attrs": {
      "text": {
        "text": "230006",
        "fill": "black"
      },
      "image": {
        "xlink:href": "/uploads/documents/computer.png",
        "width": 100,
        "height": 50
      }
    }
  }]
}

obj.cells.forEach(function(cell) {
  console.log(cell.attrs.text.text);
});