Saya mendapatkan kesalahan ini:
JSON.parse: karakter yang tidak terduga
ketika saya menjalankan pernyataan ini di firebug:
JSON.parse({"balance":0,"count":0,"time":1323973673061,"firstname":"howard","userId":5383,"localid":1,"freeExpiration":0,"status":false});
Kenapa gitu? String JSON tampaknya benar bagi saya dan saya juga mengujinya menggunakan JSHint. Objek yang diteruskan dalam kasus di atas adalah respons server dengan tipe konten disetel keapplication/json
javascript
json
krishna
sumber
sumber
Anda dapat memastikan bahwa objek yang dimaksud telah dirangkai sebelum meneruskannya ke fungsi parse hanya dengan menggunakan
JSON.stringify()
.Memperbarui baris Anda di bawah,
JSON.parse(JSON.stringify({"balance":0,"count":0,"time":1323973673061,"firstname":"howard","userId":5383,"localid":1,"freeExpiration":0,"status":false}));
atau jika Anda menyimpan JSON di beberapa variabel:
sumber
Tidak benar untuk OP, tetapi kesalahan ini dapat disebabkan oleh penggunaan tanda kutip tunggal (
'
), bukan double ("
) untuk string.Spesifikasi JSON membutuhkan tanda kutip ganda untuk string.
Misalnya:
memberikan kesalahan, sedangkan
tidak. Perhatikan tanda kutip di sekitar
myString
.Terkait: https://stackoverflow.com/a/14355724/1461850
sumber