JSON是一種輕量級的數據交換格式,易于讀寫和解析。在前后端分離的開發模式下,我們經常需要使用JSON格式傳輸數據。為了方便傳輸,在實際開發中我們需要把一個JSON對象打包成字符串的形式進行傳輸,然后在客戶端解析成對象。
//示例JSON對象 var student = { "name": "Tom", "age": 18, "gender": "male" }; //使用JSON.stringify()方法將JSON對象打包成字符串 var studentStr = JSON.stringify(student); console.log(studentStr);//輸出 {"name":"Tom","age":18,"gender":"male"}
上述代碼中,我們使用了JSON.stringify()方法將JSON對象打包成字符串的形式。該方法接受一個JavaScript對象作為參數,返回一個JSON格式的字符串。打包后的字符串中,屬性名和屬性值都必須使用雙引號包裹,否則會報語法錯誤。
在使用JSON.stringify()方法打包JSON對象時,還可以傳遞一個處理函數作為第二個參數進行定制化轉換。這個函數的作用是在打包過程中對對象進行變換,可以刪除屬性、替換屬性名等操作。示例如下:
//示例JSON對象 var student = { "name": "Tom", "age": 18, "gender": "male", "hobby": ["swimming", "running"] }; //自定義處理函數,排除hobby屬性 function filter(key, value) { if (key === 'hobby') { return undefined;//排除hobby屬性 } return value; } //使用自定義處理函數將JSON對象打包成字符串 var studentStr = JSON.stringify(student, filter); console.log(studentStr);//輸出 {"name":"Tom","age":18,"gender":"male"}
使用JSON打包成字符串是前后端順利交互的關鍵所在,開發者們在實踐中要嚴格按規定使用雙引號,必要時可以通過自定義處理函數進行定制化變換。
上一篇json打包成bin
下一篇vue自動執行