| value - the number to store, a signed 64-bit Long |
|
Creates an owned signed 64-bit JSON integer. JSON integers are full Longs, so a lifetime score, a coin total or a Millisecs-style timestamp can grow far past the 32-bit Int limit of 2147483647 and still round-trip exactly. The value serializes as a plain base-10 integer with no decimal point, and parsing it back gives the identical Long. Integers are a distinct kind (JSON_INTEGER) from floating-point numbers (JSON_NUMBER) - JsonEqual treats integer 1 and number 1.0 as different, and the strict getter JsonInteger only accepts JSON_INTEGER. JsonNumber will also read an integer, converting Long to Double (which can round above 2^53). The returned handle is owned by you: release it with FreeJson. Container setters copy their input, so the usual pattern is create, set, free. For the full rules, see the Application Data language reference. See also: JsonInteger, CreateJsonNumber, JsonKind, JsonObjectSet, FreeJson. |
; CreateJsonInteger Example ; ------------------------- ; JSON integers are signed 64-bit Longs, so a total score can ; grow far beyond the 32-bit Int limit of 2147483647 total_score=CreateJsonInteger(9000000000L) Print "Kind is JSON_INTEGER: "+(JsonKind(total_score)=JSON_INTEGER) Print "JsonInteger returns: "+JsonInteger(total_score) Print "" ; Store it in a save-game record to see it serialized exactly save=CreateJsonObject() JsonObjectSet save,"total_score",total_score Print "In a save file: "+JsonStringify(save,0) FreeJson save FreeJson total_score Print "" Print "Press any key to close the example" WaitKey End