Update cookies preferences
Promotic

JsonParse - metoda objektu Pm

Popis:
Načte vstupní text ve formátu JSON a vrátí jeho binární reprezentaci v podobě objektů (PmMap), polí (PmArray) a hodnot elementárních datových typů (Integer, String ...).
Syntaxe:
PmMap JsonParse(String sJson)
Parametry:
sJson(String) Textový řetězec ve formátu JSON.
Vrácená hodnota:
Metoda vrací vždy objekt PmMap, obsahující informace o provedené transformaci.
Upozornění: Tento objekt nepředstavuje vlastní načtená data - tyto data obsahuje až jeho vlastnost Value.
Objekt má tyto vlastnosti:
ValueVlastní načtená data ze vstupního textu.
Hodnota může být objekt PmMap, objekt PmArray nebo hodnota elementárního datového typu.
ErrorCodeČíselný kód chyby.
Hodnota 0 znamená, že řetězec JSON byl načten bez chyby.
Hodnota 1 znamená, že při načítání došlo k chybě.
ErrorIndexPokud při načítání řetězce JSON došlo k chybě, pak zde bude index znaku, na kterém chyba nastala.
Tato vlastnost není funkční ve Web obrazech
Poznámka:
Objekty uložené v JSON budou reprezentovány objekty PmMap, pole uložené v JSON budou reprezentovány objekty PmArray a ostatní hodnoty uložené v JSON budou reprezentovány hodnotou příslušného datového typu (Variant).
K těmto hierarchickým datům v objektové podobě je v aplikaci PROMOTIC snadný přístup jak z JavaScript, tak z VBScript.

Tato metoda je funkční i v Makro výraz $.expr a v události onDraw objektu PmgCanvas.
Tato metoda je funkční i ve Web obrazech.
Viz také:
Příklad1:
Nechť je v proměnné sJson řetězec: [10, 20, 30, 40].
V mMap.Value bude objekt typu PmArray.
Do proměnné vVal1 se uloží hodnota položky pole na indexu 1 (hodnota 20).
JavaScriptVBScriptVyber a zkopíruj do schránky

var mMap = Pm.JsonParse(sJson);
var oJson = mMap.Value;
var vVal1 = oJson.GetItem(1);
Příklad2:
Nechť je v proměnné sJson řetězec: {"position": {"x": 100, "y": 100}, "size": {"dx": 200, "dy": 100}}.
V mMap.Value bude objekt typu PmMap.
Do proměnné vValX se uloží hodnota vlastnosti x (hodnota 100).
Do proměnné vValDx se uloží hodnota vlastnosti dy (hodnota 200).
JavaScriptVBScriptVyber a zkopíruj do schránky

var mMap = Pm.JsonParse(sJson);
var oJson = mMap.Value;
var vValX = oJson.position.x;
var vValDx = oJson.size.dx;
Příklad3:
Nechť je v proměnné sJson řetězec: [{"x": 100, "y": 111}, {"x": 200, "y": 222}, {"x": 300, "y": 333}].
V mMap.Value bude objekt typu PmArray.
Do proměnné vValX se uloží hodnota vlastnosti x položky na indexu 1 (hodnota 200).
Do proměnné vValY se uloží hodnota vlastnosti y položky na indexu 1 (hodnota 222).
JavaScriptVBScriptVyber a zkopíruj do schránky

var mMap = Pm.JsonParse(sJson);
var oJson = mMap.Value;
var vValX = oJson.GetItem(1).x;
var vValY = oJson.GetItem(1).y;

Historie:
Pm9.00.29: Zprovozněny vlastnosti ErrorCode a ErrorIndex.
Pm9.00.28: Opravená chyba: Ze vstupního textu se špatně vytvářelo 2-rozměrné pole.
Pm9.00.26: Zprovozněno i pro 2-rozměrné pole pro objekt PmArray.
Pm9.00.09: Oprava při parsovaní JSON. Číslo se nyní ukládá vždy jako datový typ Double (dříve jako datový typ Double nebo datový typ Integer)
Pm8.03.13: Vytvořeno
Navigace:
 
- Pm
 
- Abs
- Cos
- E
- Exp
- JsonParse
 
 
- LN2
- PI
- Pow
- Sin
- Tan
© MICROSYS, spol. s r.o.