JSONParsedState
Retourneert 0 als JSON niet is geparseerd, -1 als JSON is geparseerd maar ongeldig is of een positief getal dat het JSON-type vertegenwoordigt als JSON is geparseerd en geldig is.
Opmaak
JSONParsedState ( json )
Parameters
json
- een tekstuitdrukking of een veld dat een JSON-object of een array bevat.
Resulterend gegevenstype
getal
Afkomstig uit versie
22.0
Beschrijving
JSONParsedState geeft aan of de opgegeven JSON is geparseerd (en of er een binaire weergave in het geheugen aanwezig is) en of de JSON geldig of ongeldig is. Deze functie geeft als resultaat:
-
0 als de JSON niet is geparseerd (er is geen binaire weergave aanwezig in het geheugen).
-
-1 als de JSON is geparseerd, maar ongeldig is. Als deze JSON wordt gebruikt met de andere JSON-functies, retourneren ze '?' gevolgd door een foutbericht.
-
1-6 als de JSON geldig en geparseerd is. De waarde komt overeen met een van de JSON-typen die zijn gedefinieerd in JSONSetElement.
Gebruik de functie JSONParse functie om JSON-tekst expliciet te parseren.
Voorbeeld 1
-
JSONParse ( "[3]" )
geeft [3] terug omdat JSONParse de ingevoerde JSON als tekst retourneert als het geldige JSON is. -
Let ( $a = JSONParse ("[3") ; JSONParsedState ($a) )
geeft -1 terug, omdat $A is ingesteld op een geparseerde maar ongeldige JSON-array. -
Let ( $a = "[3]" ; JSONParsedState ($a) )
retourneert 0, omdat $a niet is geparseerd. -
JSONParsedState ( JSONParse (Pi) )
retourneert -1 omdat de waarde Pi is geparseerd maar niet geldig is voor JSON. -
Let ( $a = JSONSetElement ( "" ; "a" ; "b" ; JSONString ) ; JSONParsedState ($a) )
retourneert 3, omdat JSONSetElement een geparseerd JSON object heeft gemaakt dat is opgeslagen in $a. -
Let ( $a = JSONParse ("[3]") ; JSONParsedState ($a) )
retourneert 4, omdat $A is geparseerd en een JSON-array bevat. -
JSONParsedState ( JSONParse ("") )
retourneert -1, omdat een lege tekenreeks is geparseerd, wat een ongeldige JSON is.
Voorbeeld 2
Let ( [
a = "[3"; /* String is een ongeldige JSON-array */
b = JSONParse ( a ) ; /* Fout: Invoer is ongeldige JSON */
c = JSONParsedState ( a ) ; /* 0: 'a' is nog steeds alleen tekst (niet geparseerd) */
d = JSONParsedState ( b ) ; /* -1: 'b' is geparseerd, maar is ongeldig */
e = JSONFormatElements ( b ) ; /* Fout: 'b' is ongeldig */
f = JSONFormatElements ( a ) /* Fout: JSON-tekst in 'a' is ongeldig */
] ;
a &¶& b &¶& c &¶& d &¶& e &¶& f
)
Geeft als resultaat:
[3
? * Regel 1, Kolom 3
Ontbreekt ',' of ']' in arraydeclaratie
0
-1
? * Regel 1, kolom 3
Ontbreekt ',' of ']' in arraydeclaratie
? * Regel 1, kolom 3
Ontbreekt ',' of ']' in arraydeclaratie
Als variabele a
daarentegen een geldige JSON-array is ("[3]"), wordt in dit voorbeeld het volgende geretourneerd:
[3]
[3]
0
4
[ 3 ]
[ 3 ]
Let op deze verschillen:
-
Regel 2:
JSONParse ( a )
geeft de oorspronkelijke tekst als resultaat die aan JSONParse is doorgegeven. -
Regel 4:
JSONParsedState ( b )
geeft aan dat variabeleb
is geparseerd en een geldige JSON-array is. -
Regels 5 en 6: JSONFormatElements retourneert opgemaakte tekst voor zowel de geparseerde JSON in
b
als de tekst-JSON ina
.