構文
json.validate(json: string, options?: DecodeOptions): boolean | string | nil | number | nil引数
| 名前 | 型 | 説明 |
|---|---|---|
json | string | 解析、フォーマット、縮小、または検証する JSON 文字列。 |
options? | DecodeOptions | 操作の動作を制御するオプションの設定テーブル。 |
戻り値
| 名前 | 型 | 説明 |
|---|---|---|
valid | boolean | JSON 文字列が有効な場合は True。 |
errorMessage | string | nil | ロードまたは解析が失敗した場合はエラー メッセージが返され、それ以外の場合は nil が返されます。 |
errorPosition | number | nil | 解析が失敗した位置、または解析エラーが発生しなかった場合は nil。 |
説明
JSON を検証し、解析が失敗した場合はエラーの詳細を返します。
2 個のパラメータで呼び出します: json, options。引数表では必須値と動作を調整する値を確認できます。
valid (boolean), errorMessage (string | nil), errorPosition (number | nil) を返します。戻り値表を使って成功値、nil 結果、回復可能なエラーを分けて扱ってください。
例
JSON を検証し、失敗した場合はパーサーの位置を報告します。
local valid, message, position = json.validate('{"value":42}')
if not valid then
warn(message, position)
end型
DecodeOptions
JSON 解析動作を制御します。
useNull? boolean nil の代わりにライブラリの null センチネルを使用して JSON null を表します。maxDepth? integer ネストの最大の深さを 1 ~ 4096 の範囲で設定します。