-4

我有大量(235)个 JSON 字符串,如下所示:

"57": {
    "ID": 6986,
    "Town": "Paris",
    "latitude": 48.8829447,
    "longitude": 2.3453532999999
},
"58": {
    "ID": 6987,
    "Town": "Paris",
    "latitude": 48.8749566,
    "longitude": 2.3588815000001
}

我想做一个 JavaScript 数组。我在互联网上阅读了很多关于它的帖子,但所有这些似乎都不适合我的情况。我应该怎么办?

4

2 回答 2

3

您可以使用JSON.parse()

var javascriptObject = JSON.parse(jsonString);

在旧浏览器中,您需要包含 json2.js 库:

下载链接

于 2013-03-21T21:37:00.847 回答
3

您发布的 JSON 有点损坏,看着它我假设它应该是一个具有包含对象的属性的对象:

{
    "57": {
            "ID": 6986,
            "Town": "Paris",
            "latitude": 48.8829447,
            "longitude": 2.3453532999999
    },
    "58": {
            "ID": 6987,
            "Town": "Paris",
            "latitude": 48.8749566,
            "longitude": 2.3588815000001
    }
}

假设这一点,您首先需要使用以下方法将其转换为 JS 对象JSON.parse

var obj = JSON.parse(jsonString);

然后你需要把这个对象变成一个数组:

var i,
  arr = [];

for (i in obj) {
  if (obj.hasOwnProperty(i)) {
    arr.push(obj[i]);
  }
};

// arr now contains the array you were trying to get
于 2013-03-21T21:54:41.570 回答