JSON lib for AutoHotkey
Works on both v1 and v2 of AutoHotkey
In a terminal or command line navigated to your project folder:
npm install json.ahk
In your code only export.ahk needs to be included:
#Include %A_ScriptDir%\node_modules\json.ahk\export.ahk
JSON.stringify([1, 2, 3])
; => "[1, 2, 3]"
JSON.parse("[1, 2, 3]")
; => [1, 2, 3]
You may also review or copy the library from ./export.ahk on GitHub; #Incude as you would normally if manually downloading.
Parses a JSON string into a value.
value := JSON.parse(string [, reviver ])
value (object, string, number)
- string - JSON formatted string
- reviver [optional] - function object, prescribes how the value originally produced by parsing is transformed, before being returned. Similar to JavaScript's
JSON.parse()
reviver parameter
JSON.parse("[1, 2, 3]")
; => [1, 2, 3]
Converts a value into a JSON string.
str := JSON.stringify(value, [, replacer, space ])
A JSON formatted string
- value - (object, string, number)
- replacer [optional] - function object, alters the behavior of the stringification process. Similar to JavaScript's
JSON.stringify()
replacer parameter - space [optional] -if space is a non-negative integer or string, then JSON array elements and object members will be pretty-printed with that indent level. Blank(
""
) (the default) or0
selects the most compact representation. Using a positive integer space indents that many spaces per level, this number is capped at 10 if it's larger than that. If space is a string (such as"`t"
), the string (or the first 10 characters of the string, if it's longer than that) is used to indent each level
JSON.stringify([1, 2, 3])
; => "[1, 2, 3]"
tests if a string is a valid json string or not.
JSON.test(string)
true
if the string is interpreted as valid json, else false
- string - the string value to be tested for validity
JSON.test("[1, 2, 3]")
; => true
JSON.test([1, 2, 3]) ; an object
; => false
JSON.test("")
; => false