我通过ajax从服务器获取json数据:
request.responseText=[{name:xxx},{name:xxx},{name:xx}].
然后我使用
var data=eval(request.responseText);
alert(data.length);
在 IE 中为“4”,在 Firefox 中为“3”。
使用IE调试器发现data中的元素是这样的:
[Methods]
[0]
[1]
[2]
所以它的长度是4。
我想知道为什么?
最佳答案
我的猜测是服务器返回的数据带有尾随逗号,例如:
[1, 2, 3, ]
在 IE 中,该数组将被解释为长度为 4,而在兼容标准的浏览器中,其长度为 3。
关于javascript - eval json数据在IE和firefox中获得不同的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6687891/