簡介 JSON.stringify()
JSON.stringify() 是 Javascript 提供的一個方法,
可以將 JavaScript 的值轉換成 JSON 字串(String)。
這方法需要 3 個參數
value
這個參數是必填的,會被轉成 JSON 字串1
2
3var obj = { name: "John", age: 30, city: "New York" };
var myJSON = JSON.stringify(obj);
//myJSON is 「{ "name":"John", "age":30, "city":"New York"}」replacer
這個選擇性參數,會是一個陣列或是一個 function ,主要的目的可以過濾 value 的值。
我們可以用 w3school 的範例說明一下
如果我們傳入的是一個陣列,那它會像一個過濾器一樣,只篩選出陣列中的字串1
2
3var obj = { name: "John", age: 30, city: "New York" };
var myJSON = JSON.stringify(obj, ["name", "city"]);
//myJSON is 「{"name":"John","city":"New York"}」如果我們傳入的是一個 function,會將每一個參數丟入 function 之中(可以進行加工或裝飾)
1
2
3
4
5
6var obj = { name: "John", age: 30, city: "New York" };
var myJSON = JSON.stringify(obj, (key, value) => {
if (key.match(/(age|city)/)) return "*";
return value;
});
//myJSON is 「{"name":"John","age":"*","city":"*"}」space 選擇性
這個參數是為了可讀性1
2
3var obj = { name: "John", age: 30, city: "New York" };
var myJSON = JSON.stringify(obj, null, 2);
//myJSON is 「{ "name": "John", "age": 30, "city": "New York" }」
JSON.stringify(obj, null, 2);
或JSON.stringify(obj, null, 4);
便是開發者常用的呼叫方式