eval json data get different length in IE and firefox
I got json data from the server by ajax:
request.responseText=[{name:xxx},{name:xxx},{name:xx}].
Then I use the
var data=eval(request.responseText);
alert(data.length);
In IE,it is "4",while in Firefox it is "3".
Use the IE debugger I found that the element in data is li开发者_Python百科ke:
[Methods]
[0]
[1]
[2]
So itis length is 4.
I wonder why?
My guess is that the server returned data with a trailing comma, for example:
[1, 2, 3, ]
In IE, this array will be interpreted as having a length 4, while in standard compliant browsers, it will have a length 3.
[Methods] is a separate node shown by the debugger to separate functions from other values.
It does not actually exist in the object.
If an array has three items named 0, 1, and 2, its length will be 3.
加载中,请稍侯......
精彩评论