Iterating a JavaScript object's properties using jQuery Iterating a JavaScript object's properties using jQuery javascript javascript

Iterating a JavaScript object's properties using jQuery


$.each( { name: "John", lang: "JS" }, function(i, n){    alert( "Name: " + i + ", Value: " + n );});

each


You can use each for objects too and not just for arrays:

var obj = {    foo: "bar",    baz: "quux"};jQuery.each(obj, function(name, value) {    alert(name + ": " + value);});


Note: Most modern browsers will now allow you to navigate objects in the developer console. This answer is antiquated.

This method will walk through object properties and write them to the console with increasing indent:

function enumerate(o,s){    //if s isn't defined, set it to an empty string    s = typeof s !== 'undefined' ? s : "";    //if o is null, we need to output and bail    if(typeof o == "object" && o === null){       console.log(s+k+": null");    } else {            //iterate across o, passing keys as k and values as v        $.each(o, function(k,v){            //if v has nested depth           if(typeof v == "object" && v !== null){                //write the key to the console                console.log(s+k+": ");                //recursively call enumerate on the nested properties                enumerate(v,s+"  ");            } else {                //log the key & value                console.log(s+k+": "+String(v));            }        });    }}

Just pass it the object you want to iterate through:

    var response = $.ajax({        url: myurl,        dataType: "json"    })    .done(function(a){       console.log("Returned values:");       enumerate(a);    })    .fail(function(){ console.log("request failed");});