SyntaxError: JSON.parse unexpected characterSyntaxError: JSON.parse gặp ký tự không mong đợi
JSON.parse() gặp cú pháp JSON không hợp lệ, chẳng hạn nháy đơn, dấu phẩy thừa cuối, hoặc khóa không được trích dẫn.
Nguyên nhân gây ra lỗi này
Chuỗi truyền vào JSON.parse() không phải JSON hợp lệ. Vấn đề thường gặp gồm dùng nháy đơn thay vì nháy kép, dấu phẩy thừa cuối, comment trong JSON, tên thuộc tính không được trích dẫn, hoặc chuỗi là HTML/XML thay vì JSON.
Cách sửa
Xác thực chuỗi JSON bằng JSON validator. Đảm bảo tất cả chuỗi dùng nháy kép, loại bỏ dấu phẩy thừa cuối và comment. Ghi log chuỗi thô trước khi phân tích để xem thực sự bạn đang cố phân tích gì.
Ví dụ
JSON.parse("{'key': 'value'}"); // SyntaxError: single quotes invalid in JSONMã lỗi liên quan
ERR_CRYPTO_INVALID_STATEERR_CRYPTO_INVALID_STATE
Một thao tác mã hóa được thực hiện trong trạng thái không hợp lệ.
ERR_FS_CP_DIR_TO_NON_DIRERR_FS_CP_DIR_TO_NON_DIR
Đã cố sao chép một thư mục tới một đích không phải thư mục.
ERR_INVALID_RETURN_VALUEERR_INVALID_RETURN_VALUE
Một hàm trả về giá trị không đúng kiểu dự kiến.
ReferenceError: x is not definedReferenceError: x chưa được định nghĩa (is not defined)
Một biến được tham chiếu nhưng chưa được khai báo trong bất kỳ phạm vi nào có thể truy cập.
ERR_NETWORK_IMPORT_DISALLOWEDERR_NETWORK_IMPORT_DISALLOWED
Đã thử import qua mạng (HTTP/HTTPS) nhưng cấu hình Node.js hiện tại không cho phép.
RangeError: Invalid array lengthRangeError: độ dài mảng không hợp lệ
Mảng được tạo với độ dài không hợp lệ, chẳng hạn số âm hoặc số không nguyên.