JSON.stringify()
Penggunaan biasa JSON adalah untuk pertukangan data dengan pelayan web.
Dalam menghantar data kepada pelayan web, data mesti adalah string.
Melalui JSON.stringify()
Tukar objek JavaScript kepada string.
Stringify objek JavaScript
Gimana jika kita ada objek ini di JavaScript:
var obj = { name:"Bill Gates", age:62, city:"Seattle"};
Guna fungsi JavaScript JSON.stringify()
Tukar ia kepada string.
var myJSON = JSON.stringify(obj);
Hasilnya akan adalah string yang patut diikuti dengan penanda JSON.
myJSON kini adalah string dan siap untuk dihantar kepada pelayan:
实例
var obj = { name:"Bill Gates", age:62, city:"Seattle"}; var myJSON = JSON.stringify(obj); document.getElementById("demo").innerHTML = myJSON;
Anda akan belajar di bab berikutnya bagaimana untuk menghantar JSON kepada pelayan.
Stringify array JavaScript
Juga boleh distringify array JavaScript:
Gimana jika kita ada array ini di JavaScript:
var arr = [ "Bill Gates", "Steve Jobs", "Elon Musk" ];
Guna fungsi JavaScript JSON.stringify()
Tukar ia kepada string.
var myJSON = JSON.stringify(arr);
Hasilnya akan adalah string yang patut diikuti dengan penanda JSON.
myJSON kini adalah string dan siap untuk dihantar kepada pelayan:
实例
var arr = [ "Bill Gates", "Steve Jobs", "Elon Musk" ]; var myJSON = JSON.stringify(arr); document.getElementById("demo").innerHTML = myJSON;
Anda akan belajar di bab berikutnya bagaimana untuk menghantar JSON kepada pelayan.
Pengecualian
Pengecatan tarikh
Dalam JSON, objek tarikh adalah tidak diizinkan.JSON.stringify()
Fungsi akan mengubah mana-mana tarikh kepada string.
实例
var obj = { "name":"Bill Gates", "today":new Date(), "city":"Seattle"}; var myJSON = JSON.stringify(obj); document.getElementById("demo").innerHTML = myJSON;
Anda boleh mengubah string kepada objek tarikh di titik penerima.
函数字符串化
在 JSON 中,不允许函数作为对象值。
JSON.stringify()
函数将从 JavaScript 对象删除任何函数,包括键和值:
实例
var obj = { "name":"Bill Gates", "age":function () {return 62;}, "city":"Seattle"}; var myJSON = JSON.stringify(obj); document.getElementById("demo").innerHTML = myJSON;
如果您在运行 JSON.stringify()
函数前已将函数转换为字符串,这个环节可以省略。
实例
var obj = { "name":"Bill Gates", "age":function () {return 62;}, "city":"Seattle"}; obj.age = obj.age.toString(); var myJSON = JSON.stringify(obj); document.getElementById("demo").innerHTML = myJSON;
您应该避免在 JSON 中使用函数,函数会失去其作用域,而且您还需要使用 eval()
将它们转换回函数。
浏览器支持
所有主流浏览器和最新的 ECMAScript (JavaScript) 标准都包含 JSON.stringify()
函数:
下表中的数字指定了完全支持 JSON.stringify()
函数的首个浏览器版本:
Yes | 8.0 | 3.5 | 4.0 | 10.0 |