如何通过JS判断一个数组

共 3020字,需浏览 7分钟

 ·

2023-08-27 07:47


前言


如何通过 js 判断一个数组,在面试中我们常常会遇到这个问题,本章主要基于几种判断方式及原理带大家了解如何通过 js 判断一个数组。


1. instanceof


instanceof   用于检测构造函数的 prototype 属性是否在实例对象的原型链上。如果存在就返回 true否则返回 false


HTML代码


                              
var arr = [];


arr instanceof Array; // true






2. constructor


大家都知道,实例的构造函数属性 constructor 指向构造函数,那么通过 constructor 属性也可以判断是否为一个数组。


HTML代码


                              
var arr = [];


arr.constructor == Array; //true



3. Array.isArray()


Array.isArray()   用于确定传递的值是否是一个数组,返回一个布尔值。如果 是数组返回 true;否则返回  false


HTML代码


                              
var a = new Array(123);


var b = new Date();


console.log(Array.isArray(a)); //true


console.log(Array.isArray(b)); //false


4. object.prototype.tostring.call()


通过 tostring 判断,每个对象都可以通过 object.prototype.tostring.call() 来检测。


HTML代码


                              
let a = [1,2,3]


Object.prototype.toString.call(a) === '[object Array]';//true

object.prototype.tostring.call()   强大的地方在于它不仅仅可以检验是否为数组,还可以检测是否为函数,是否是数字等等。
                              

//检验是否是函数



let a = function () {};


Object.prototype.toString.call(a) === '[object Function]';//true



//检验是否是数字



let b = 1;


Object.prototype.toString.call(b) === '[object Number]';//true


e90692b14c7043f1837f21909c6104ef.webp

以上就是今天的全部内容啦,我们下期再见!


浏览 28
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报