JavaScript三种区分对象和数组的方法介绍
程序员文章站
2022-11-15 21:58:46
解决问题时有时会碰到需要区分是对象还是数组的问题。
下面介绍三种方法:
1:constructor
var obj={};
var ar...
解决问题时有时会碰到需要区分是对象还是数组的问题。
下面介绍三种方法:
1:constructor
var obj={}; var arr=[];
我可以直接调用constructor属性来看一下它们的构造函数。
2:instanceof
a instanceof ?b?判断a的原型链上面有没有b的原型
很明显 obj上面没有array原型,但是arr有
3 object.prototype.tostring.call()
tostring()方法本身是对象.tostring()调用的,不同对象调用时,方法也不一样,所以我们就肯定猜测tostring()里面一定有this来判断调用者的类型,然后调用对应的tostring()函数,而call正好可以改变内部this指向的对象。
那么为什么要用object.prototype的了?因为它显示的最清楚,不同的对象调用时,返回的结果不同。
推荐阅读
-
JavaScript遍历数组的三种方法map、forEach与filter实例详解
-
JavaScript使用原型和原型链实现对象继承的方法详解
-
Vue实现动态添加或者删除对象和对象数组的操作方法
-
javascript 删除数组元素和清空数组的简单方法
-
JavaScript Math对象和调试程序的方法分析
-
NumPy 快速入门:数组对象的排序、插入、删除、添加及其他特殊方法介绍
-
反射(反射的介绍、获取源头Class、创建对象、属性和方法)
-
PowerShell中Get-Date对象的常用属性和方法介绍
-
JavaScript类数组对象转换为数组对象的方法实例分析
-
javascript 判断一个对象为数组的方法