Sample code for 30+ languages & platforms
Zig

Understanding JSON Array vs JSON Object

See more JSON Examples

This example explains the difference between a JSON Array and a JSON Object. A JSON Array begins with "[" and ends with "]", whereas a JSON Object begins with "{" and ends with "}".

Elements contained in a JSON array are accessed by index, whereas elements in a JSON object are typically accessed by name (but can also be accessed by index).

Chilkat Zig Downloads

Zig
const std = @import("std");
const chilkat = @import("chilkat");

pub fn main() !void {
    // A JSON array should be loaded into a Chilkat JSON array,
    // whereas a JSON object should be loaded into a Chilkat JSON object.

    // A JSON array may contain objects, and a JSON object may contains arrays, but
    // it is the top-level (outermost) element that defines whether the JSON
    // document is an array or an object.
    // An array begins and ends with "[" ... "]"
    // An object begins and ends with "{" ... "}"

    // For example, an array containing 2 objects:
    const str_json_array = "[ { \"name\": \"Bill\" }, { \"name\": \"Ted\" } ]";

    // Load it into a JSON array.
    const json_a = try chilkat.JsonArray.init();
    defer json_a.deinit();
    try json_a.load(str_json_array);
    std.debug.print("number of array elements: {d}\n", .{json_a.getSize()});

    // This is an object containing an array:
    const str_json_obj = "{ \"characters\": [ \"Bill\", \"Ted\" ] }";

    // Load it into a JSON object.
    const json_o = try chilkat.JsonObject.init();
    defer json_o.deinit();
    try json_o.load(str_json_obj);
    std.debug.print("number of object members: {d}\n", .{json_o.getSize()});
}