JSON是目前應(yīng)用非常廣泛的一種輕量級(jí)數(shù)據(jù)交換格式。在前端開發(fā)中,我們經(jīng)常需要將一些JavaScript對(duì)象轉(zhuǎn)換為JSON格式的數(shù)據(jù),并將其發(fā)送到后端進(jìn)行處理。而有時(shí)我們也需要將后端返回的JSON數(shù)據(jù)進(jìn)行解析,轉(zhuǎn)換為JavaScript對(duì)象,以便在前端進(jìn)行操作。
在JavaScript中,JSON對(duì)象提供了兩個(gè)方法,分別是JSON.stringify()和JSON.parse(),用于進(jìn)行JSON數(shù)據(jù)與JavaScript對(duì)象之間的轉(zhuǎn)換。
//JavaScript對(duì)象轉(zhuǎn)換為JSON數(shù)據(jù)
const person = {
name: 'Tom',
age: 20,
isStudent: true,
hobbies: ['football', 'reading']
};
const jsonString = JSON.stringify(person);
//JSON數(shù)據(jù)轉(zhuǎn)換為JavaScript對(duì)象
const jsonStr = '{"name":"Tom","age":20,"isStudent":true,"hobbies":["football","reading"]}';
const obj = JSON.parse(jsonStr);
使用JSON.stringify()方法,我們可以將一個(gè)JavaScript對(duì)象轉(zhuǎn)換為一個(gè)JSON格式的字符串。在調(diào)用該方法時(shí),我們可以為其傳遞兩個(gè)參數(shù):要進(jìn)行轉(zhuǎn)換的JavaScript對(duì)象,以及一個(gè)可選的replacer函數(shù),用于控制轉(zhuǎn)換中某些值的處理方式。
而使用JSON.parse()方法,則可以將一個(gè)JSON格式的字符串轉(zhuǎn)換為一個(gè)等價(jià)的JavaScript對(duì)象。在調(diào)用該方法時(shí),我們同樣可以傳遞兩個(gè)參數(shù):要進(jìn)行轉(zhuǎn)換的JSON字符串,以及一個(gè)可選的reviver函數(shù),用于在轉(zhuǎn)換過程中修改某些值。