-2

How can we list the value for a property (e.g., "ObjectPropertyTwo") in the following JSON object array?

    {
    "KeyOne": [
        {
            "ObjectPropertyOne": "value",
            "ObjectPropertyTwo": "value",
            "ObjectPropertyThree": "value",
            "ObjectPropertyFour": "value",
        },
        {
            "ObjectPropertyOne": "value",
            "ObjectPropertyTwo": "value",
            "ObjectPropertyThree": "value",
            "ObjectPropertyFour": "value",
        },
        {
            "ObjectPropertyOne": "value",
            "ObjectPropertyTwo": "value",
            "ObjectPropertyThree": "value",
            "ObjectPropertyFour": "value",
        },
    ],
    "KeyTwo": [
        {
            "ObjectPropertyOne": "value",
            "ObjectPropertyTwo": "value",
            "ObjectPropertyThree": "value",
            "ObjectPropertyFour": "value",
        },
        {
            "ObjectPropertyOne": "value",
            "ObjectPropertyTwo": "value",
            "ObjectPropertyThree": "value",
            "ObjectPropertyFour": "value",
        },
        {
            "ObjectPropertyOne": "value",
            "ObjectPropertyTwo": "value",
            "ObjectPropertyThree": "value",
            "ObjectPropertyFour": "value",
        },
    ],
    "KeyThree": [
        {
            "ObjectPropertyOne": "value",
            "ObjectPropertyTwo": "value",
            "ObjectPropertyThree": "value",
            "ObjectPropertyFour": "value",
        },
        {
            "ObjectPropertyOne": "value",
            "ObjectPropertyTwo": "value",
            "ObjectPropertyThree": "value",
            "ObjectPropertyFour": "value",
        },
        {
            "ObjectPropertyOne": "value",
            "ObjectPropertyTwo": "value",
            "ObjectPropertyThree": "value",
            "ObjectPropertyFour": "value",
        }
    ]
}
Andrew Barber
  • 39,603
  • 20
  • 94
  • 123
id.ot
  • 3,071
  • 1
  • 32
  • 47
  • Your edit was inappropriate and off-topic, and was rolled back properly - by a moderator. I am locking this to prevent further editing for now. When the lock expires, *do not* add back in your off-topic comments. – Andrew Barber Oct 21 '13 at 17:40

2 Answers2

2

How about:

for (var key in data) { //data being the object
    for (var i = 0; i < data[key].length; i++) {
        console.log(data[key][i].ObjectPropertyTwo);
    }
}

Demo: http://jsfiddle.net/tymeJV/csFms/

tymeJV
  • 103,943
  • 14
  • 161
  • 157
  • My apologies for my delay in response, I confirmed your answer solved the problem thank you. – id.ot Sep 27 '13 at 20:17
1
function listNestedProperties(object, property) {
  return Object.keys(object).reduce(function(memo, key) {
    object[key].forEach(function(o2) {
      memo.push(o2.ObjectPropertyTwo);
    });
    return memo;
  }, []);
}

listNestedProperties(yourObject, 'ObjectPropertyTwo');
// => ["value", "value", "value", "value", "value", "value", "value", "value", "value"]
maerics
  • 151,642
  • 46
  • 269
  • 291