Rumah >hujung hadapan web >tutorial js >Mengapa Saya Mendapat Ralat 'Token Tidak Dijangka' Semasa Menghuraikan JSON dalam JavaScript?

Mengapa Saya Mendapat Ralat 'Token Tidak Dijangka' Semasa Menghuraikan JSON dalam JavaScript?

Barbara Streisand
Barbara Streisandasal
2024-12-02 17:46:15139semak imbas

Why Am I Getting an

Token 'o' Tidak Dijangka dalam JavaScript

Dalam tutorial ini, tujuannya adalah untuk memuatkan perbendaharaan kata daripada fail JSON ke dalam jadual HTML. Walau bagaimanapun, proses itu melanda sekatan jalan dengan ralat "Uncaught SyntaxError: Unexpected token o."

Ralat menghala ke baris:

var glacier = JSON.parse(data);

Dalam kod yang disediakan, jQuery's $.get () kaedah digunakan untuk mendapatkan semula fail JSON. Walau bagaimanapun, butiran penting telah diabaikan: $.get() cuba meneka jenis data. Dalam kes ini, ia secara salah menganggap data adalah JSON dan memulakan proses penghuraian walaupun $.getJSON() tidak dipanggil secara eksplisit.

Apabila kod kemudian cuba menghuraikan JSON secara manual dengan JSON.parse() , ralat token yang tidak dijangka berlaku. Untuk menyelesaikan isu ini, nyatakan secara eksplisit jenis data dalam kaedah $.get() menggunakan pilihan dataType. Ini memastikan bahawa jQuery mengendalikan data dengan betul sebagai JSON, menghapuskan ralat token yang tidak dijangka.

Sebagai contoh, kod boleh diubah suai seperti yang ditunjukkan di bawah:

jQuery.get('wokab.json', function(data) {
  var glacier = JSON.parse(data);
}, 'json');

Dengan menambahkan 'json' parameter kepada kaedah $.get(), jQuery akan mentafsirkan respons dengan jelas sebagai JSON, menghalang ralat token yang tidak dijangka dan membolehkan kejayaan memuatkan perbendaharaan kata ke dalam jadual.

Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat 'Token Tidak Dijangka' Semasa Menghuraikan JSON dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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