更精致的Javascript类型?

更精致的Javascript类型?,javascript,jquery,object,Javascript,Jquery,Object,typeof有没有方法返回对象是什么 typeof {}; 返回“对象” 还返回“object”。js中有没有返回“数组”的方法 最重要的是,有没有办法判断一个对象是DOM对象、javascript对象还是其他对象?您可以使用它 如果对象是数组,则Array.isArray()方法返回true;如果对象不是数组,则返回false 您不能扩展typeof运算符,但为了更好地进行类型检查,您可以(ab)使用 因为一切都是一个对象,所以您必须玩游戏才能获得更多详细信息。请参见[]数组的instanc

typeof有没有方法返回对象是什么

typeof {};
返回“对象”

还返回“object”。js中有没有返回“数组”的方法

最重要的是,有没有办法判断一个对象是DOM对象、javascript对象还是其他对象?

您可以使用它

如果对象是数组,则
Array.isArray()
方法返回true;如果对象不是数组,则返回false


您不能扩展
typeof
运算符,但为了更好地进行类型检查,您可以(ab)使用


因为一切都是一个对象,所以您必须玩游戏才能获得更多详细信息。请参见
[]数组的instanceof Array
is
true
({})数组的instanceof Array
is
false
这也适用于非数组类型
document.body instanceof
true
如果您真的需要编写代码来检查变量是DOM元素还是JavaScript对象,您可能应该首先询问为什么要在同一个函数中同时使用这两个变量。正如@arcyqwerty提到的,你可以这样做:这是一个非常低效的解决方案。您应该使用。
instanceof
不返回对象是什么,因此这是唯一的答案。它不返回对象是什么
typeof [];
Object.prototype.toString.call([]) === '[object Array]'
Object.prototype.toString.call(document) === '[object HTMLDocument]`