我很好奇为什么IE8会在线上窒息
if (isArray(obj))
这是我在IE8 javascript控制台中获得的:
>>obj
{...}
>>typeof(obj)
"object"
>>Object.prototype.toString.call(obj)
"[object Array]"
甚至
>>obj.length
7
然而,
>>isArray(obj)
Object expected
为什么会发生这种情况(ie8不支持isArray?)以及解决问题的最佳方法是什么?
我试图在IE8上使用新版本的Angular。我知道它没有得到官方的支持,但我会试着让应用程序更好或更差。
谢谢。
答案 0 :(得分:6)
因为IE 9有Array.isArray()。
试试这个:
Array.isArray = function (obj) {
return Object.prototype.toString.call(obj) === "[object Array]";
};
Array.isArray(obj);