The existsByPath method checks whether a specified path exists in the JSON object.
existsByPath( path )
| Argument | Description |
|---|---|
path
|
(string) The path to check. Construct the path from array indexes and object attribute names, and use a slash (/) as the separator. If an object attribute name includes a slash, then escape the slash with a backslash, for example "one\\/two". Notice that you must also escape a backslash with another backslash. |
(Boolean) Returns true if the path exists, false otherwise.
Consider the following JSON:
{
"product": "IDOL",
"component": "CFS",
"version": { "major": 11, "minor": 3 },
"ports": [
{ "type": "ACI", "number": 7000 },
{ "type": "Service", "number": 17000 }
]
}
If this JSON is represented by an object named myJsonObject, you could use the existsByPath method as follows:
print (myJsonObject:existsByPath("ports/0/type"))
-- true (LuaJsonArrays are zero-indexed)
print (myJsonObject:existsByPath("ports/2/type") )
-- false (LuaJsonArrays are zero-indexed, and there is no third value)
print (myJsonObject:existsByPath("version/major"))
-- true