Syntaxe
json.validate(json: string, options?: DecodeOptions): boolean | string | nil | number | nilArguments
| Nom | Type | Description |
|---|---|---|
json | string | Chaîne JSON à analyser, formater, réduire ou valider. |
options? | DecodeOptions | Tableau de paramètres facultatifs qui contrôle le comportement de l'opération. |
Retours
| Nom | Type | Description |
|---|---|---|
valid | boolean | Vrai lorsque la chaîne JSON est valide. |
errorMessage | string | nil | Message d'erreur renvoyé en cas d'échec du chargement ou de l'analyse, sinon nul. |
errorPosition | number | nil | Position où l'analyse a échoué, ou nulle lorsqu'aucune erreur d'analyse ne s'est produite. |
Description
Valide JSON et renvoie les détails de l'erreur en cas d'échec de l'analyse.
Appelle le avec 2 parametre(s): json, options. La table des arguments indique les valeurs requises et celles qui affinent le comportement.
Il renvoie valid (boolean), errorMessage (string | nil), errorPosition (number | nil). Utilise la table des retours pour separer les valeurs reussies, les resultats nil et les erreurs recuperables.
Exemple
Validez JSON et signalez la position de l'analyseur en cas d'échec.
local valid, message, position = json.validate('{"value":42}')
if not valid then
warn(message, position)
endTypes
DecodeOptions
Contrôle le comportement d'analyse JSON.
useNull? boolean Représente JSON null avec la sentinelle nulle de la bibliothèque au lieu de nil.maxDepth? integer Définit la profondeur d'imbrication maximale, comprise entre 1 et 4 096.