Việc sử dụng JSON phổ biến là trao đổi dữ liệu thành/từ máy chủ web.
Khi nhận dữ liệu từ một máy chủ web, dữ liệu luôn là một chuỗi.
Phân tích dữ liệu với JSON.parse[]
và dữ liệu trở thành đối tượng JavaScript.
Ví dụ - Phân tích cú pháp JSON
Hãy tưởng tượng chúng tôi đã nhận được văn bản này từ một máy chủ web:
'{"Tên": "John", "Tuổi": 30, "Thành phố": "New York"}'
Sử dụng chức năng JavaScript JSON.parse[]
để chuyển đổi văn bản thành đối tượng JavaScript:
const obj = json.parse ['{"name": "john", "tuổi": 30, "thành phố": "new york"}'];
Hãy chắc chắn rằng văn bản ở định dạng JSON, nếu không bạn sẽ gặp lỗi cú pháp.
Sử dụng đối tượng JavaScript trong trang của bạn:
Thí dụ
document.getEuityById ["demo"]. Internhtml = obj.Name;
document.getElementById["demo"].innerHTML = obj.name;
Hãy tự mình thử »
Mảng là json
Khi sử dụng JSON.parse[]
trên JSON có nguồn gốc từ một mảng, phương thức sẽ trả về một mảng JavaScript, thay vì một đối tượng JavaScript.
Thí dụ
const text = '["Ford", "BMW", "Audi", "Fiat"]';
const myArr = JSON.parse[text];
Hãy tự mình thử »
Mảng là json
Khi sử dụng JSON.parse[]
trên JSON có nguồn gốc từ một mảng, phương thức sẽ trả về một mảng JavaScript, thay vì một đối tượng JavaScript.
const text = '["ford", "bmw", "audi", "fiat"]'; const myarr = json.parse [văn bản];
Ngoại lệ
Ngày phân tích cú pháp
Thí dụ
Convert a string into a date:
document.getEuityById ["demo"]. Internhtml = obj.Name;
const obj = JSON.parse[text];
obj.birth = new Date[obj.birth];
Hãy tự mình thử »
Hãy tự mình thử »
Mảng là json
Khi sử dụng JSON.parse[]
trên JSON có nguồn gốc từ một mảng, phương thức sẽ trả về một mảng JavaScript, thay vì một đối tượng JavaScript.
Thí dụ
Convert a string into a date, using the reviver function:
document.getEuityById ["demo"]. Internhtml = obj.Name;
const obj = JSON.parse[text, function [key, value] {
if [key == "birth"] {
return new Date[value];
} else {
return value;
}
}];
Hãy tự mình thử »
Hãy tự mình thử »
Mảng là json
Khi sử dụng JSON.parse[]
trên JSON có nguồn gốc từ một mảng, phương thức sẽ trả về một mảng JavaScript, thay vì một đối tượng JavaScript.
const text = '["ford", "bmw", "audi", "fiat"]'; const myarr = json.parse [văn bản];
Ngoại lệ
Thí dụ
Convert a string into a function:
document.getEuityById ["demo"]. Internhtml = obj.Name;
const obj = JSON.parse[text];
obj.age = eval["[" + obj.age + "]"];
Hãy tự mình thử »
Hãy tự mình thử »
Mảng là json
Thí dụ
Cách sử dụng hàm Reviver:
/*Thay thế giá trị của "thành phố" thành trường hợp trên:*/ var text = '{"name": "john", "tuổi": "39", "thành phố": "new york"}'; var obj = json.parse [văn bản, hàm [khóa, giá trị] {& nbsp; if [key == "city"] {& nbsp; & nbsp; & nbsp; return value.touppercase []; & nbsp; & nbsp; & nbsp; & nbsp; giá trị trả về; & nbsp; & nbsp;}}];
Hãy tự mình thử »
Phân tích cú pháp JSON nhận được từ máy chủ:
var xmlHttp = new xmlHttpRequest []; xmlHttp.onReadyStateChange = function [] {& nbsp; if [this.ReadyState == 4 && this.status == 200] {& nbsp; & nbsp; & nbsp; var myobj = json.parse [this.responsetext]; & nbsp; & nbsp; "json_demo.txt", đúng]; xmlhttp.send [];
Hãy xem json_demo.txt
Các trang liên quan
Hướng dẫn JSON: Giới thiệu JSON
Tại sao JSON Parse được sử dụng?
Json.parse [] Sử dụng JSON phổ biến là trao đổi dữ liệu sang/từ máy chủ web. Khi nhận dữ liệu từ một máy chủ web, dữ liệu luôn là một chuỗi. Phân tích dữ liệu với json.parse [] và dữ liệu trở thành đối tượng javascript.
Parse [] | 4.0 | 8.0 | 3.5 | 4.0 | 11.5 |
Cú pháp
Json.parse [chuỗi, hàm]
Giá trị tham số
sợi dây | Yêu cầu. Một chuỗi được viết ở định dạng JSON |
hàm reviver | Không bắt buộc. Một chức năng được sử dụng để biến đổi kết quả. Hàm được gọi cho mỗi mục. Bất kỳ đối tượng lồng nhau nào đều được chuyển đổi trước khi cha mẹ. Nếu hàm trả về giá trị hợp lệ, giá trị vật phẩm được thay thế bằng giá trị biến đổi
|
Chi tiết kỹ thuật
Một đối tượng JSON hoặc mảng |
Ecmascript 5 |
Nhiều ví dụ hơn
Thí dụ
Cách sử dụng hàm Reviver:
/*Thay thế giá trị của "thành phố" thành trường hợp trên:*/ var text = '{"name": "john", "tuổi": "39", "thành phố": "new york"}'; var obj = json.parse [văn bản, hàm [khóa, giá trị] {& nbsp; if [key == "city"] {& nbsp; & nbsp; & nbsp; return value.touppercase []; & nbsp; & nbsp; & nbsp; & nbsp; giá trị trả về; & nbsp; & nbsp;}}];
var text = '{ "name":"John", "age":"39", "city":"New York"}';
var obj = JSON.parse[text, function [key, value] {
if [key == "city"] {
return value.toUpperCase[];
} else {
return value;
}
}];
document.getEuityById ["demo"]. Internhtml = obj.Name + "," + obj.city;
Hãy tự mình thử »
Thí dụ
Cách sử dụng hàm Reviver:
/*Thay thế giá trị của "thành phố" thành trường hợp trên:*/ var text = '{"name": "john", "tuổi": "39", "thành phố": "new york"}'; var obj = json.parse [văn bản, hàm [khóa, giá trị] {& nbsp; if [key == "city"] {& nbsp; & nbsp; & nbsp; return value.touppercase []; & nbsp; & nbsp; & nbsp; & nbsp; giá trị trả về; & nbsp; & nbsp;}}];
xmlhttp.onreadystatechange = function[] {
if [this.readyState == 4 && this.status == 200] {
var myObj = JSON.parse[this.responseText];
document.getElementById["demo"].innerHTML
= myObj.name;
}
};
xmlhttp.open["GET", "json_demo.txt", true];
xmlhttp.send[];
Hãy tự mình thử »
Phân tích cú pháp JSON nhận được từ máy chủ:
var xmlHttp = new xmlHttpRequest []; xmlHttp.onReadyStateChange = function [] {& nbsp; if [this.ReadyState == 4 && this.status == 200] {& nbsp; & nbsp; & nbsp; var myobj = json.parse [this.responsetext]; & nbsp; & nbsp; "json_demo.txt", đúng]; xmlhttp.send [];
Hãy xem json_demo.txt