Lua
Lua
JSON: Access Array Values
See more JSON Examples
Demonstrates how to access values in a JSON array.Chilkat Lua Downloads
local chilkat = require("chilkat")
local json = chilkat.JsonObject.new()
local jsonStr = "{ \"id\": 1, \"name\": \"A green door\", \"tags\": [\"home\", 22, \"green\"], \"price\": 125 }"
local success = json:load(jsonStr)
if not success then
print(json.last_error_text)
return
end
-- Get the "tags" array, which contains "home", 22, "green"
local tagsArray = json:array_of("tags")
if not json.last_method_success then
print("tags member not found.")
return
end
-- Get the value at each array index.
-- Output will be:
-- [0] = home
-- [0] as integer = 0
-- [1] = 22
-- [1] as integer = 22
-- [2] = green
-- [2] as integer = 0
local arraySize = tagsArray.size
for i = 0, arraySize - 1 do
local sValue = tagsArray:string_at(i)
print("[" .. i .. "] = " .. sValue)
local iValue = tagsArray:int_at(i)
print("[" .. i .. "] as integer = " .. iValue)
end
-- Note: The StringAt method returns the value as a string regardless of the type.
-- The IntAt method returns the value as an integer. If the value does not convert to
-- an integer, then 0 is returned.