在JavaScript中,數(shù)組對象是非常常見的數(shù)據(jù)結(jié)構(gòu),而將數(shù)組對象轉(zhuǎn)換為JSON字符串也是十分常見的操作。ES中提供了一系列的方法來方便地將數(shù)組對象轉(zhuǎn)換為JSON字符串,下面我們來逐一介紹。
// 示例數(shù)組對象 let arr = [ { name: '張三', age: 20, gender: 'male' }, { name: '李四', age: 22, gender: 'female' } ];
1. JSON.stringify()
該方法接受一個 JavaScript 值(通常是對象或數(shù)組)作為參數(shù),然后將其轉(zhuǎn)換為一個 JSON 字符串。
// 轉(zhuǎn)換為JSON字符串 let jsonStr1 = JSON.stringify(arr); console.log(jsonStr1); // '[{"name":"張三","age":20,"gender":"male"},{"name":"李四","age":22,"gender":"female"}]'
2. JSON.parse()
該方法接受一個JSON字符串作為參數(shù),然后將其轉(zhuǎn)換為一個JavaScript值(通常是對象或數(shù)組)。
// 轉(zhuǎn)換為JavaScript對象 let jsonObj = JSON.parse(jsonStr1); console.log(jsonObj); // [{name: "張三", age: 20, gender: "male"}, {name: "李四", age: 22, gender: "female"}]
3. Array.prototype.toJSON()
該方法可以在數(shù)組對象上定義一個toJSON方法,用于將數(shù)組對象轉(zhuǎn)換為JSON字符串。
// 定義toJSON方法 arr.toJSON = function() { let arrJson = []; for (let i = 0; i< this.length; i++) { let objJson = {}; for (let key in this[i]) { objJson[key] = this[i][key]; } arrJson.push(objJson); } return arrJson; }; // 轉(zhuǎn)換為JSON字符串 let jsonStr2 = JSON.stringify(arr); console.log(jsonStr2); // '[{"name":"張三","age":20,"gender":"male"},{"name":"李四","age":22,"gender":"female"}]'
以上就是ES中數(shù)組對象轉(zhuǎn)JSON字符串的三種方法,根據(jù)具體場景可以選擇合適的方法進行處理。
上一篇python 獲取k線
下一篇vue商城廣告滾動