JSONParsedState
Returnerar 0 om JSON inte har parsats, -1 om JSON har parsats men är ogiltig, eller ett positivt tal som representerar JSON-typen om den parsats och är giltig.
Format
JSONParsedState ( json )
Parametrar
json – ett textuttryck eller fält som innehåller ett JSON-objekt eller -matris.
Returnerad datatyp
nummer
Ursprungsversion
22.0
Beskrivning
JSONParsedState anger om angiven JSON har parsats (och har en binär representation i minnet) och om JSON är giltigt eller ogiltigt. Funktionen returnerar:
- 
                                                0 om JSON inte har blivit parsats (ingen binär representation finns i minnet). 
- 
                                                -1 om JSON har parsats men är ogiltig. Om JSON används med de andra JSON-funktionerna returnerar de ”?” följt av ett felmeddelande. 
- 
                                                1-6 om JSON är giltigt och har parsats. Värdet motsvarar en av JSON-typerna som definieras i JSONSetElement. 
Om du uttryckligen vill parsa JSON-text ska du använda Funktionen JSONParse.
Exempel 1
- 
                                                JSONParse ( "[3]" )returnerar [3] eftersom JSONParse returnerar ingående JSON som text om det är giltig JSON.
- 
                                                Let ( $a = JSONParse ("[3") ; JSONParsedState ($a) )returnerar -1 eftersom $a angetts till en parsad men ogiltig JSON-matris.
- 
                                                Let ( $a = "[3]" ; JSONParsedState ($a) )returnerar 0 eftersom $a inte har parsats.
- 
                                                JSONParsedState ( JSONParse (Pi) )returnerar -1 eftersom värdet Pi har tolkats men inte är giltig JSON.
- 
                                                Let ( $a = JSONSetElement ( "" ; "a" ; "b" ; JSONString ) ; JSONParsedState ($a) )returnerar 3 eftersom JSONSetElement skapade ett parsat JSON-objekt som lagras i $a.
- 
                                                Let ( $a = JSONParse ("[3]") ; JSONParsedState ($a) )returnerar 4 eftersom $a har parsats och innehåller en JSON-matris.
- 
                                                JSONParsedState ( JSONParse ("") )returnerar -1 eftersom en tom sträng har parsats men den är ogiltig som JSON.
Exempel 2
Let ( [
  a = "[3";                      /* Strängen är en ogiltig JSON-matris */
  b = JSONParse ( a ) ;          /* Fel: Indata är ogiltig JSON */
  c = JSONParsedState ( a ) ;    /* 0: 'a' är bara text ännu (har inte parsats) */
  d = JSONParsedState ( b ) ;    /* -1: 'b' har parsats men är ogiltigt */
  e = JSONFormatElements ( b ) ; /* Fel: 'b' är ogiltigt */
  f = JSONFormatElements ( a )   /* Fel: JSON-text i 'a' är ogiltig */
] ;
  a &¶& b &¶& c &¶& d &¶& e &¶& f
)Returnerar:
[3
? * Line 1, Column 3
  Missing ',' or ']' in array declaration
0
-1
? * Line 1, Column 3
  Missing ',' or ']' in array declaration
? * Line 1, Column 3
  Missing ',' or ']' in array declarationOm variabeln a däremot är en giltig JSON-matris ("[3]"), returnerar det här exemplet följande:
[3]
[3]
0
4
[ 3 ]
[ 3 ]Notera dessa skillnader:
- 
                                                Rad 2: JSONParse ( a )returnerar den ursprungliga texten som skickades in JSONParse.
- 
                                                Rad 4: JSONParsedState ( b )återspeglar att variabelbhar parsats och är en giltig JSON-matris.
- 
                                                Rad 5 och 6: JSONFormatElements returnerar formaterad text för både parsad JSON i boch JSON som text ia.