Javascript Array构造函数属性不起作用

时间:2012-10-12 18:58:37

标签: javascript arrays

任何对象Constructor属性都返回其构造函数,但它不适用于Array。

var o={};
o.constructor; --> returns Object()

var a=new Array();
a.constructor; --> Expecting Array() but it returns [undefined]

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

对象的constructor属性将引用一个函数。而是检查变量是否包含数组,执行以下操作:

if (Object.prototype.toString.call(a)==='[object Array]') alert('Array!');

建议的a.length解决方法不能100%工作,因为它可能有一个具有length属性而不是实际数组的对象。