JSON

json.tryDecode

Cố gắng phân tích cú pháp JSON và trả về thông tin lỗi có cấu trúc thay vì gửi đi.

Cú pháp

json.tryDecode(json: string, options?: DecodeOptions): boolean | any | nil | string | nil | number | nil

Đối số

TênKiểuMô tả
jsonstringChuỗi JSON để phân tích cú pháp, định dạng, thu nhỏ hoặc xác thực.
options?DecodeOptionsBảng cài đặt tùy chọn kiểm soát cách hoạt động.

Giá trị trả về

TênKiểuMô tả
successbooleanĐúng khi thao tác hoàn tất thành công.
decodedany | nilGiá trị Luau được giải mã hoặc chuỗi byte được giải mã.
errorMessagestring | nilThông báo lỗi được trả về khi tải hoặc phân tích cú pháp không thành công, nếu không thì không.
errorPositionnumber | nilVị trí phân tích cú pháp không thành công hoặc không xảy ra lỗi phân tích cú pháp.

Mô tả

Cố gắng phân tích cú pháp JSON và trả về thông tin lỗi có cấu trúc thay vì gửi đi.

Goi voi 2 parameter: json, options. Bang arguments giai thich gia tri nao bat buoc va gia tri nao chi tinh chinh hanh vi.

Tra ve success (boolean), decoded (any | nil), errorMessage (string | nil), errorPosition (number | nil). Dung bang returns de tach gia tri thanh cong, ket qua nil va loi co the xu ly.

Ví dụ

Cố gắng giải mã JSON mà không đưa vào dữ liệu đầu vào không đúng định dạng.

local ok, value, message, position = json.tryDecode('{"ready":true}')

if ok then
    print(value.ready)
else
    warn(message, position)
end

Kiểu

DecodeOptions

Kiểm soát hành vi phân tích cú pháp JSON.

useNull? boolean Biểu thị JSON null bằng giá trị null của thư viện thay vì con số không.maxDepth? integer Đặt độ sâu lồng tối đa, được kẹp từ 1 đến 4096.