gpt4 book ai didi

javascript - 如何判断它是对象还是数组?

转载 作者:行者123 更新时间:2023-11-28 11:18:14 25 4
gpt4 key购买 nike

我想知道函数中变量的类型。所以,我使用了 typeof ,如下所示:

randomFunctionName: function(obj){
switch(typeof obj){
case "object":
//Something
case "text":
//Something else
}
}

但问题是,我无法判断 obj 是数组还是对象,因为

typeof [] === "object"  //true
typeof {} === "object" //true

那么,我怎样才能将它们分开呢?他们之间有什么区别吗?

最佳答案

数组是一个对象。您可以按如下方式测试对象是否为数组:

Object.prototype.toString.apply(value) === '[object Array]';

您可以将其包装到一个函数中,如下所示:

function isArray(a)
{
return Object.prototype.toString.apply(a) === '[object Array]';
}

关于javascript - 如何判断它是对象还是数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10368632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com