Possible Duplicate:
Length of Javascript Object (ie. Associative Array)
I have an object similar to this one:
var jsonArray = { '-1': { '-1': 'b', '2': 'a', '10': 'c' }, '2': { '-1': 'a', '2': 'b', '10': 'a' }, '5': { '-1': 'a', '2': 'a', '10': 'b' } };
I'm trying to get it's length, the problem is that jsonArray.length
returns 5 instead of 3 (which is the total items it has). The array is relatively long (has 1000x2000 items) and this must be done a lot of times every second. How can I get the number of items more efficiently?
You can get the number of elements in an array using yourArray. length .
No, it isn't possible to do math or any kind of expression in JSON as JSON is just a data structure format, and not a programming language.
JSON Syntax JSON defines only two data structures: objects and arrays. An object is a set of name-value pairs, and an array is a list of values. JSON defines seven value types: string, number, object, array, true, false, and null.
In addition to kieran's answer, apparently, modern browsers have an Object.keys
function. In this case, you could do this:
Object.keys(jsonArray).length;
More details in this answer on How to list the properties of a javascript object
That's an Object and you want to count the properties of it.
Object.keys(jsonArray).length
References:
Object.keys
.If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With