Saya bingung kapan harus menggunakan dua metode parsing ini.
Setelah saya echo data json_encoded saya dan mengambilnya kembali melalui ajax, saya sering mengalami kebingungan tentang kapan saya harus menggunakan JSON.stringify dan JSON.parse .
Saya masuk [object,object]
ke console.log saya saat diuraikan dan objek JavaScript saat diketikkan.
$.ajax({
url: "demo_test.txt",
success: function(data) {
console.log(JSON.stringify(data))
/* OR */
console.log(JSON.parse(data))
//this is what I am unsure about?
}
});
javascript
json
THIRUR HIRA
sumber
sumber
json.stringify(json.parse(data))
.Jawaban:
JSON.stringify
mengubah objek JavaScript menjadi teks JSON dan menyimpan teks JSON itu dalam sebuah string, misalnya:JSON.parse
mengubah string teks JSON menjadi objek JavaScript, misalnya:sumber
JSON.parse()
adalah untuk "parsing" sesuatu yang diterima sebagai JSON.JSON.stringify()
adalah membuat string JSON dari objek / array.sumber
JSON.stringify(3)
Mereka adalah kebalikan dari satu sama lain.
JSON.stringify()
serialisasi objek JS menjadi string JSON, sedangkanJSON.parse()
akan deserialize string JSON menjadi objek JS.sumber
Mereka saling bertolak belakang.
JSON.stringify ()
JSON.stringify () membuat serialisasi objek atau nilai JS menjadi string JSON.
JSON.parse ()
Metode JSON.parse () mem-parsing string sebagai JSON, secara opsional mengubah nilai yang dihasilkan.
sumber
parse()
adalahobjectify()
ataujsonify()
.jsonify()
akan ambigu dan menyesatkan, karenaparse()
tidak tidak mengkonversiString
keJSON
jenis (yang adalah apa yangjsonify()
akan menunjukkan), tetapiparse()
mengkonversi JSON-diformatString
ke salah:Object
,Array
,Number
,String
,Boolean
ataunull
. Orang sering mengacaukan "representasi string" JSON danObject
(ataudict
dengan Python, dll.).Pertama,
JSON.stringify()
fungsi mengonversi nilai JavaScript ke string JavaScript Object Notation (JSON).JSON.parse()
function mengubah string Notasi Objek JavaScript (JSON) menjadi objek. Untuk informasi lebih lanjut tentang dua fungsi ini, silakan merujuk ke tautan berikut.https://msdn.microsoft.com/library/cc836459(v=vs.94).aspx https://msdn.microsoft.com/library/cc836466(v=vs.94).aspx
Kedua, sampel berikut akan membantu Anda untuk memahami kedua fungsi ini.
sumber
// Keluarannya adalah:
// Untuk Konsol 1 adalah String Seperti:
// Untuk Konsol ke-2 adalah Object Like:
sumber
JSON.stringify()
Mengubah objek menjadi string.JSON.parse()
Mengubah string JSON menjadi objek.sumber
Kebingungan sebenarnya di sini bukan tentang parse vs stringify, ini tentang tipe data dari
data
parameter callback sukses.data
dapat berupa respons mentah, yaitu string, atau dapat berupa objek JavaScript, sesuai dengan dokumentasi:Dan tipe data default ke pengaturan 'tebakan cerdas'
sumber
Objek JavaScript <-> String JSON
JSON.stringify (obj) - Mengambil objek serializable apa pun dan mengembalikan representasi JSON sebagai string.
JSON.parse (string) - Mengambil string JSON yang terbentuk dengan baik dan mengembalikan objek JavaScript yang sesuai.
Penjelasan: JSON.stringify (obj [, replacer [, space]]);
Replacer / Space - opsional atau mengambil nilai integer atau Anda dapat memanggil fungsi pengembalian tipe interger.
sumber
Mereka adalah kebalikan dari satu sama lain.
JSON.parse()
digunakan untuk mem - parsing data yang diterima sebagai JSON ; itu deserializes sebuah tali JSON ke dalam objek JavaScript .JSON.stringify()
di sisi lain digunakan untuk membuat string JSON dari objek atau array ; itu serializes sebuah objek JavaScript ke dalam string yang JSON .sumber
Saya tidak tahu apakah itu telah disebutkan, tetapi salah satu penggunaan JSON.parse (JSON.stringify (myObject)) adalah untuk membuat klon dari objek asli.
Ini berguna ketika Anda ingin mengacaukan beberapa data tanpa mempengaruhi objek asli. Mungkin bukan cara terbersih / tercepat tetapi tentu saja yang paling sederhana untuk objek yang tidak terlalu rumit.
sumber
JSON.stringify(obj [, replacer [, space]])
- Mengambil objek serializable dan mengembalikan representasi JSON sebagai string.JSON.parse(string)
- Mengambil string JSON yang terbentuk dengan baik dan mengembalikan objek JavaScript yang sesuai.sumber
Mereka saling menentang.
JSON.Stringify()
mengkonversi JSON ke string danJSON.Parse()
mem-parsing string ke JSON.sumber
JSON: Ini terutama digunakan untuk bertukar data ke / dari server. Sebelum mengirim objek JSON ke server, itu harus berupa string.
Ini juga mengubah array Javascript menjadi string
Ketika kami menerima data JSON dari server, data akan menjadi format string. Oleh karena itu kami mengubah string menjadi objek JSON.
sumber
JSON.parse()
digunakan untuk mengkonversi String ke Object.JSON.stringify()
digunakan untuk mengonversi Object ke String.Anda dapat merujuk ini juga ...
sumber
JSON.parse () mengambil string JSON dan mengubahnya menjadi objek JavaScript.
JSON.stringify () mengambil objek JavaScript dan mengubahnya menjadi string JSON.
Dan meskipun metode biasanya digunakan pada objek, mereka juga dapat digunakan pada array:sumber