簡體   English   中英

如何使用 JavaScript 讀取沒有父根名稱的 JSON?

[英]How can I read a JSON without parent root name with JavaScript?

我有一個 JSON 文件,其中包含:

[
   {
      "id":"1",
      "customer":{
         "nickname":"nick001",
         "email":"",
         "id":"15615",
         "name":"Smith Dole",
         "phone":"5555555"
      },
      "totalorder":"44155",
      "items":[
         {
            "code":"041545420",
            "title":"item",
            "quantity":1,
            "price":"2461.7500",
            "subtotal":2461.75
         }
      ]
   }
]

如您所見,它沒有任何父根名稱。 如何使用 JavaScript 閱讀此 JSON?

我正在考慮解析 Json 但 JSON.parse(需要名稱)

是否可以在我的 JavaScript 代碼中調用此 JSON 並將其分配給變量?

var newSelling = 來自 JSON 的數據

JSON 是由另一個系統生成的,它以這種方式生成,所以我需要讀取 JSON 以獲取其他進程所需的數據

JSON 是自動生成的,它在一個外部文件中

所以它是一個 JSON 文件。 通過 fetch 或 XMLHttpRequest 請求它並訪問 JSON。

fetch('/path/to/your/file.json')
  .then(response => response.json())
  .then(data => {
    console.log(data)
  });

如果要從本地讀取瀏覽器中的文件,可以使用以下解決方案之一:

我推薦獲取 API。

      fetch("data.json")
      .then(response => response.json())
      .then(json => console.log(json));

它適用於 Firefox,但在 Chrome 中您必須自定義安全設置。

解析 JSON 應該如下工作:

const json = '{"result":true, "count":42}';
const obj = JSON.parse(json);

console.log(obj.count);
// expected output: 42

console.log(obj.result);
// expected output: true

更多信息

編輯:你可以紅色這個問題 我認為這可能會有所幫助

如果你仔細看,你會發現這個 JSON 文件只是一個 JSON 數組,里面只有一個 Object。 因此,您必須訪問陣列中的 object。

let arr = JSON.parse(*the json object*);
let obj = arr[0];

我沒有對此進行測試,但希望這會有所幫助。

在您的情況下,僅使用 JSON.parse 不起作用,但JSON.stringifyJSON.parse的組合正如我所嘗試的那樣工作。 所以首先,我們可以將它字符串化,然后我們可以解析它

像這樣:

var a = [
   {
      "id":"1",
      "customer":{
         "nickname":"nick001",
         "email":"",
         "id":"15615",
         "name":"Smith Dole",
         "phone":"5555555"
      },
      "totalorder":"44155",
      "items":[
         {
            "code":"041545420",
            "title":"item",
            "quantity":1,
            "price":"2461.7500",
            "subtotal":2461.75
         }
      ]
   }
];

var b = JSON.stringify(a);
var c = JSON.parse(b);
console.log(c[0].id); //output : 1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM