Search code examples
javascriptjqueryjquery-uiobjectobject-literal

To count the number of objects in object literal using Jquery


Code:

var animals = {
                    "elephant": {
                                    "name" : "Bingo",
                                    "age" : "4"
                                },
                    "Lion":     {
                                    "name" : "Tango",
                                    "age" : "8"
                                },
                    "Tiger":    {
                                    "name" : "Zango",
                                    "age" : "7"
                                }
                }

I want to count the number of objects using Jquery in this object literal.


Solution

  • You could use Object.keys(animals).length

    Or

    var count = 0;
    for (var animal in animals) {
        if (animals.hasOwnProperty(animal)) {
            count++;
        }
    }
    // `count` now holds the number of object literals in the `animals` variable
    

    Or one of many jQuery solutions that may or may not be the most efficient:

    var count = $.map(animals, function(n, i) { return i; }).length;