数码资讯
Javascript判断变量是否为对象或数组的方法
所有类型的返回对象 在Javascript中,所有数据类型都是严格意义上的对象,但实际使用中仍然有类型。如果我们要判断一个变量是数组或对象,我们不能用的,因为它返回对象。 复制代码代码如下所示: var o = { 'name':'lee}; var a = { 'reg ','蓝色' }; doc
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
所有类型的返回对象
在Javascript中,所有数据类型都是严格意义上的对象,但实际使用中仍然有类型。如果我们要判断一个变量是数组或对象,我们不能用的,因为它返回对象。
复制代码代码如下所示:
var o = { 'name':'lee};
var a = { 'reg ','蓝色' };
document.write(O型是+型O);
document.write('');
document.write(一类是+种类);
实施:
复制代码代码如下所示:
O型为对象
一类是对象
因此,我们只能放弃这种方法,判断有两种方式可以是数组或对象。
首先,使用类型和长度的属性
数组的长度属性,对象不,和类型的数组和对象的所有返回的对象,所以我们可以判断这
复制代码代码如下所示:
var o = { 'name':'lee};
var a = { 'reg ','蓝色' };
无功getdatatype =功能(o){
如果(typeof O = = 'object){
如果(typeof o.length = =数){
return'array;
其他{ }
return'object;
}
其他{ }
return'param没有对象类型;
}
};
警报(getdatatype(O)); / /对象
Alert (getDataType (a)); / / Array
警报(getdatatype(1)); / /参数是没有对象类型
警报(getdatatype(真正的)); / /参数是没有对象类型
警报(getdatatype(a)); / /参数是没有对象类型
其次,使用实例
是可以用来判断变量是否为数组,如:
复制代码代码如下所示:
var o = { 'name':'lee};
var a = { 'reg ','蓝色' };
警报(一个是数组); / /真的
警报(O是数组); / /假
也可以判断它是否属于对象。
复制代码代码如下所示:
var o = { 'name':'lee};
var a = { 'reg ','蓝色' };
警报(一个实例对象); / /真的
警报(O实例对象); / /真的
但是数组也属于对象,所以上面的两个都是真的。因此,我们需要使用instanceof来决定数据类型对象或数组,我们应该优先考虑阵列和最后判断对象。
复制代码代码如下所示:
var o = { 'name':'lee};
var a = { 'reg ','蓝色' };
无功getdatatype =功能(o){
如果(O是数组){
return'array
} else if(O实例对象){
return'object;
其他{ }
return'param没有对象类型;
}
};
警报(getdatatype(O)); / /对象
警报(getdatatype(一)); / /阵列
警报(getdatatype(1)); / /参数是没有对象类型
警报(getdatatype(真正的)); / /参数是没有对象类型
警报(getdatatype(a)); / /参数是没有对象类型
如果不优先考虑数组,例如:
复制代码代码如下所示:
var o = { 'name':'lee};
var a = { 'reg ','蓝色' };
无功getdatatype =功能(o){
如果(O实例对象){
return'object
} else if(O是数组){
return'array;
其他{ }
return'param没有对象类型;
}
};
警报(getdatatype(O)); / /对象
警报(getdatatype(一)); / /对象
警报(getdatatype(1)); / /参数是没有对象类型
警报(getdatatype(真正的)); / /参数是没有对象类型
警报(getdatatype(a)); / /参数是没有对象类型
然后,数组也将被判断为对象。
在Javascript中,所有数据类型都是严格意义上的对象,但实际使用中仍然有类型。如果我们要判断一个变量是数组或对象,我们不能用的,因为它返回对象。
复制代码代码如下所示:
var o = { 'name':'lee};
var a = { 'reg ','蓝色' };
document.write(O型是+型O);
document.write('');
document.write(一类是+种类);
实施:
复制代码代码如下所示:
O型为对象
一类是对象
因此,我们只能放弃这种方法,判断有两种方式可以是数组或对象。
首先,使用类型和长度的属性
数组的长度属性,对象不,和类型的数组和对象的所有返回的对象,所以我们可以判断这
复制代码代码如下所示:
var o = { 'name':'lee};
var a = { 'reg ','蓝色' };
无功getdatatype =功能(o){
如果(typeof O = = 'object){
如果(typeof o.length = =数){
return'array;
其他{ }
return'object;
}
其他{ }
return'param没有对象类型;
}
};
警报(getdatatype(O)); / /对象
Alert (getDataType (a)); / / Array
警报(getdatatype(1)); / /参数是没有对象类型
警报(getdatatype(真正的)); / /参数是没有对象类型
警报(getdatatype(a)); / /参数是没有对象类型
其次,使用实例
是可以用来判断变量是否为数组,如:
复制代码代码如下所示:
var o = { 'name':'lee};
var a = { 'reg ','蓝色' };
警报(一个是数组); / /真的
警报(O是数组); / /假
也可以判断它是否属于对象。
复制代码代码如下所示:
var o = { 'name':'lee};
var a = { 'reg ','蓝色' };
警报(一个实例对象); / /真的
警报(O实例对象); / /真的
但是数组也属于对象,所以上面的两个都是真的。因此,我们需要使用instanceof来决定数据类型对象或数组,我们应该优先考虑阵列和最后判断对象。
复制代码代码如下所示:
var o = { 'name':'lee};
var a = { 'reg ','蓝色' };
无功getdatatype =功能(o){
如果(O是数组){
return'array
} else if(O实例对象){
return'object;
其他{ }
return'param没有对象类型;
}
};
警报(getdatatype(O)); / /对象
警报(getdatatype(一)); / /阵列
警报(getdatatype(1)); / /参数是没有对象类型
警报(getdatatype(真正的)); / /参数是没有对象类型
警报(getdatatype(a)); / /参数是没有对象类型
如果不优先考虑数组,例如:
复制代码代码如下所示:
var o = { 'name':'lee};
var a = { 'reg ','蓝色' };
无功getdatatype =功能(o){
如果(O实例对象){
return'object
} else if(O是数组){
return'array;
其他{ }
return'param没有对象类型;
}
};
警报(getdatatype(O)); / /对象
警报(getdatatype(一)); / /对象
警报(getdatatype(1)); / /参数是没有对象类型
警报(getdatatype(真正的)); / /参数是没有对象类型
警报(getdatatype(a)); / /参数是没有对象类型
然后,数组也将被判断为对象。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。