Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Mengelak Ralat Apabila Memuatkan Data JSON Secara Asynchronous dengan $.getJSON() jQuery?

Bagaimanakah Saya Boleh Mengelak Ralat Apabila Memuatkan Data JSON Secara Asynchronous dengan $.getJSON() jQuery?

Susan Sarandon
Lepaskan: 2024-12-14 17:06:12
asal
306 orang telah melayarinya

How Can I Avoid Errors When Asynchronously Loading JSON Data with jQuery's $.getJSON()?

Pemuatan JSON Asynchronous

Memuatkan fail JSON setempat menggunakan kaedah $.getJSON jQuery kadangkala boleh mengakibatkan tingkah laku yang tidak dijangka apabila cuba mengakses yang dimuatkan data. Ini berlaku kerana $.getJSON melaksanakan secara tidak segerak, bermakna kod berikutnya yang mengakses data mungkin dilaksanakan sebelum fail JSON dimuatkan sepenuhnya.

Dalam contoh yang disediakan:

var json = $.getJSON("test.json");
var data = eval("(" + json.responseText + ")");
document.write(data["a"]);
Salin selepas log masuk

Baris eval gagal kerana json.responseText masih tidak ditentukan kerana fail JSON belum dimuatkan lagi.

Untuk menyelesaikan isu ini, $.getJSON hendaklah dikendalikan secara tak segerak menggunakan fungsi panggil balik:

$.getJSON("test.json", function(json) {
    console.log(json); // Access the loaded data within this callback
});
Salin selepas log masuk

Dengan melaksanakan pendekatan tak segerak ini, kod yang mengakses data JSON hanya akan dilaksanakan selepas data dimuatkan sepenuhnya, memastikan data ditakrifkan dan boleh diakses.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengelak Ralat Apabila Memuatkan Data JSON Secara Asynchronous dengan $.getJSON() jQuery?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan