jsonEncode

jsonEncode

> Funktioner

Kodar objektet object till en JSON-sträng.

Parametrar
Retur
TypeScript

I JavaScript går JSON.stringify(value) tyst förbi det den inte kan skriva, i stället för att påtala det: en Map och ett Set ger båda {}, och en egenskap som är undefined försvinner från objektet — inuti en array blir den null. Omvandla därför dina tabeller före kodningen: Object.fromEntries(m) eller [...m]. Och vid läsningen kastar JSON.parse ett SyntaxError på ogiltig JSON, medan jsonDecode i LeekScript nöjer sig med att returnera null.

Python

I Python kastar json.dumps(value) ett TypeError på ett värde den inte kan serialisera, medan jsonEncode i LeekScript skriver ett fel i loggen och returnerar en tom sträng. Det gäller ett set och spelets API-objekt (Cell, Leek, Weapon): omvandla dem först, list(mon_set) eller cellule.id. En annan skillnad: nycklarna i en ordbok blir strängar, json.dumps({1: 2}) blir '{"1": 2}'. Och vid läsningen kastar json.loads ett JSONDecodeError på ogiltig JSON, medan jsonDecode returnerar null.