Page 1 of 1

Eval Makes Length Undefined

Posted: Thu Jun 02, 2011 6:31 pm
by unemployment
I have a json encoded array
{"users":[{"row_id":"1","0":"Tom","1":"Cruise","2":"tomcruise","3":"1","4":"231","5":"10","6":"Old","7":"235","8":"532","9":"12"},{"row_id":"21","0":"mrs. tom","1":"cruise","2":"place","3":"0","4":null,"5":null,"6":null,"7":"6","8":"42","9":"0"}]}
My javascript is...
var search 	        = eval('(' + resp + ')');
var search_wrap 	=[];
			
alert(search.length);
When my function returns the json encoded array, my alert is undefined. Is this because my array is multidimensional?
Array
(
   [users] => Array
       (
           [0] => Array
               (
                   [row_id] => 1
                   [0] => Tom
                   [1] => Cruise
                   [2] => tomcruise
               )

           [1] => Array
               (
                   [row_id] => 21
                   [0] => mrs tom
                   [1] => cruise
                   [2] => mrstomcruise
               )

       )

)

Re: Eval Makes Length Undefined

Posted: Thu Jun 02, 2011 7:43 pm
by jacek
unemployment wrote: Is this because my array is multidimensional?
No it's because objects don't have a length property ;)

You can do
search.users.length;

Re: Eval Makes Length Undefined

Posted: Fri Jun 03, 2011 4:11 am
by unemployment
jacek wrote:
unemployment wrote: Is this because my array is multidimensional?
No it's because objects don't have a length property ;)

You can do
search.users.length;
Yes, you're right. You can basically do what you suggested.