如何將JSON反序列化為JavaScript物件?
序列化是將物件轉換為可透過網路傳輸的形式的過程。在JavaScript中,我們通常將物件序列化為JSON(或JavaScript物件表示法)格式。
要將JSON反序列化為JavaScript物件,我們需要使用JSON.parse()方法。
JavaScript物件表示法用於與Web伺服器或RESTful API交換資料。我們從Web伺服器獲取的資料始終是字串變數,為了使用它,我們需要使用JSON.parse()進行解析,它將返回一個JavaScript物件或陣列物件。以下是parse()方法的語法
JSON.parse(string, function);
JSON.parse()方法始終以字串格式接收其引數(即,我們必須用單引號將值括起來)。
示例1
在下面的示例中,我們傳遞一個名為text的變數,並使用JSON.parse()方法將其轉換為物件格式。
<!DOCTYPE html> <html lang="en"> <head></head> <body> <script> var text = '{"name":" Aman Kumar","Company":"TutorialsPoint", "city":"Hyderabad"}'; var obj = JSON.parse(text); document.write(JSON.stringify(obj)); </script> </body> </html>
示例2
在下面的示例中,我們直接將文字值傳遞給JSON.parse()方法。資料轉換後,我們將結果物件的內容列印到一個段落標籤中。
<!DOCTYPE html> <html lang="en"> <head> </head> <body> <p id="demo"></p> <script> var obj = JSON.parse( '{"name":" Aman Kumar","Company":"TutorialsPoint", "city":"Hyderabad"}' ); document.getElementById("demo").innerHTML = obj.name + " " + obj.Company + " " + obj.city; </script> </body> </html>
示例3
在下面的示例中,我們將字串元素陣列傳遞給JSON.parse()方法。
<html> <body> <h2>Parsing a JSON Array.</h2> <p>JSON array will be parsed into a JavaScript array.</p> <p id="demo"></p> <script> const text = '[ "Tutorial", "Point", "Telangana", "Hyderabad" ]'; const JSArr = JSON.parse(text); document.getElementById("demo").innerHTML = JSArr; </script> </body> </html>
示例4
讓我們來看另一個例子:
<html> <body> <script> const json = '{"result":true, "count":42}'; // Parse the object const obj = JSON.parse(json); document.write(obj.count,"<br>"); document.write(obj.result); </script> </body> </html>
廣告