Sample code for 30+ languages & platforms
Objective-C

JSON: Array of Objects

See more JSON Examples

Here we have a JSON object that contains an array, where each element in the array is a JSON object. This example demonstrates how to access the objects contained within an array.
{ 
  "employees":[
    {"firstName":"John", "lastName":"Doe"},
    {"firstName":"Anna", "lastName":"Smith"},
    {"firstName":"Peter","lastName":"Jones"}
  ]
}

Chilkat Objective-C Downloads

Objective-C
#import <CkoJsonObject.h>
#import <NSString.h>
#import <CkoJsonArray.h>

BOOL success = NO;

CkoJsonObject *json = [[CkoJsonObject alloc] init];

// This is the above JSON with whitespace chars removed (SPACE, TAB, CR, and LF chars).
// The presence of whitespace chars for pretty-printing makes no difference to the Load
// method. 
NSString *jsonStr = @"{\"employees\":[{\"firstName\":\"John\", \"lastName\":\"Doe\"},{\"firstName\":\"Anna\", \"lastName\":\"Smith\"},{\"firstName\":\"Peter\",\"lastName\":\"Jones\"}]}";

success = [json Load: jsonStr];
if (success != YES) {
    NSLog(@"%@",json.LastErrorText);
    return;
}

// Get the "employees" array.
CkoJsonArray *employees = [json ArrayOf: @"employees"];
if (json.LastMethodSuccess == NO) {
    NSLog(@"%@",@"employees member not found.");
    return;
}

// Iterate over each employee, getting the JSON object at each index.
int numEmployees = [employees.Size intValue];
int i = 0;
while (i < numEmployees) {

    CkoJsonObject *empObj = [employees ObjectAt: [NSNumber numberWithInt: i]];

    NSLog(@"%@%d%@%@%@%@",@"employee[",i,@"] = ",[empObj StringOf: @"firstName"],@" ",[empObj StringOf: @"lastName"]);

    i = i + 1;
}