从这里开始这个问题:检查未定义
我想知道一个对象是否是 an Array
,现在我需要测试一个 Object 是否专门是 anObject
而不仅仅是 an 的子类Object
因为此时Array
如果检查它是否是 an 的实例,则会返回 true Object
。还有其他类型可以评估为真吗?
额外信息
我发现,如果您调用toString
具有Array
一个字符串元素的函数,它会解析为该字符串元素,而不是"[object Array]"
因此您需要注意这一点。例如:
["str1", "str2"].toString() === "[object Array]"
但
["str1"].toString() === "str1"