难度级别:中高级及以上 提问概率:65%
我们日常如果想要获得一个变量的类型,大多会使用typeof的方法,但typeof却不是很准确,遇到null、数组或是对象这种数据类型的时候,他就失灵了,返回值是object,那么都有哪些方式可以区分一个变量的类型是对象还是数组呢?请看以下4种方式
1 第一种
第一种是使用constructor判断,每一个类或者构造函数,都会默认添加一个constructor方法,通过这个方法,我们可以知道某个实例对象,是哪一个构造函数产生的。
Javascript代码:
<script>
let arr = [1, 2, 3];
let obj = {"name": "jim", "age": 25};
// 返回值: ƒ Array() { [native code] }
console.log(arr.constructor);
// 返回值: ƒ Object() { [native code] }
console.log(obj.constructor);
</script>