Penggunaan umum JSON adalah untuk bertukar data ke / dari server web.
Saat mengirim data ke server web, data harus berupa string.
Ubah objek JavaScript menjadi string dengan menggunakan JSON.stringify().
Section Artikel
Objek Stringfy JavaScript
Anggap kita memiliki objek ini di JavaScript:
Gunakan fungsi JavaScript JSON.stringify() untuk mengubahnya menjadi string.
var myJSON = JSON.stringify(obj);
Hasilnya adalah string yang mengikuti notasi JSON.
myJSON sekarang menjadi string, dan siap dikirim ke server:
<!DOCTYPE html> <html> <body> <h2> Buat string JSON dari objek JavaScript. </h2> <p id="demo"></p> <script> var obj = { name: "John", age: 30, city: "New York" }; var myJSON = JSON.stringify(obj); document.getElementById("demo").innerHTML = myJSON; </script> </body> </html>
Stringfy Array JavaScript
Stringfy juga memungkinkan untuk mengubah array JavaScript menjadi string:
Anggap kita memiliki array ini di JavaScript:
var arr = [ "John", "Peter", "Sally", "Jane" ];
Gunakan fungsi JavaScript JSON.stringify() untuk mengubahnya menjadi string.
var myJSON = JSON.stringify(arr);
Hasilnya adalah string yang mengikuti notasi JSON.
myJSON sekarang menjadi string, dan siap dikirim ke server:
<!DOCTYPE html> <html> <body> <h2> Buat string JSON dari larik JavaScript. </h2> <p id="demo"></p> <script> var arr = [ "John", "Peter", "Sally", "Jane" ]; var myJSON = JSON.stringify(arr); document.getElementById("demo").innerHTML = myJSON; </script> </body> </html>
Pengecualian
Stringify Dates
Di JSON, objek tanggal tidak diperbolehkan. Fungsi JSON.stringify() akan mengubah tanggal apa pun menjadi string.
Contoh:
<!DOCTYPE html> <html> <body> <h2> JSON.stringify akan mengonversi objek tanggal apa pun menjadi string. </h2> <p id="demo"></p> <script> var obj = { name: "John", today: new Date(), city: "New York" }; var myJSON = JSON.stringify(obj); document.getElementById("demo").innerHTML = myJSON; </script> </body> </html>
Anda dapat mengubah string kembali menjadi objek tanggal di penerima.
Fungsi Stringify
Di JSON, fungsi tidak diperbolehkan sebagai nilai objek.
Fungsi JSON.stringify() akan menghapus fungsi apa pun dari objek JavaScript, baik kunci maupun nilainya.
Contoh:
<!DOCTYPE html> <html> <body> <h2> JSON.stringify akan menghapus fungsi apa pun dari objek. </h2> <p id="demo"></p> <script> var obj = { name: "John", age: function () {return 30;}, city: "New York" }; var myJSON = JSON.stringify(obj); document.getElementById("demo").innerHTML = myJSON; </script> </body> </html>
Ini bisa dihilangkan jika kita mengonversi fungsi menjadi string sebelum menjalankan fungsi JSON.stringify ().
<!DOCTYPE html> <html> <body> <h2> JSON.stringify akan menghapus fungsi apa pun dari objek. </h2> <p> Ubah fungsi menjadi string untuk menyimpannya dalam objek JSON. </p> <p id="demo"></p> <script> var obj = { name: "John", age: function () {return 30;}, city: "New York" }; obj.age = obj.age.toString(); var myJSON = JSON.stringify(obj); document.getElementById("demo").innerHTML = myJSON; </script> </body> </html>
Jika Anda mengirim fungsi menggunakan JSON, fungsi tersebut akan kehilangan cakupannya, dan penerima harus menggunakan eval() untuk mengubahnya kembali menjadi fungsi.
Dukungan Browser
Fungsi JSON.stringify () disertakan dalam JavaScript (ECMAScript) dan didukung di semua browser utama.
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Ya | 8.0 | 3.5 | 4.0 | 10.0 |