问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

js 判断是不是数组

发布网友 发布时间:2022-04-22 13:50

我来回答

2个回答

懂视网 时间:2022-04-23 20:22

前言

本篇是基础知识普及篇,js判断数据类型等。我们都知道,php中有is_array()函数,但是js中没有,我们判断数据类型是否是数组的时候,通常保险起见,可以写个函数进行判断。今天呢,普及一些基本的数据类型判断方法,希望对大家有所帮助。

typeof篇

typeof用的比较多的时候,是判断某个全局变量在不在,假如某个页面定义了一个全局变量。假如你做如下判断:

//haorooms是全局变量if(haorooms!=undefined){}//js会报错,说"Uncaught ReferenceError: haorooms is not defined"

解决的方法是我们如下写:

 if(typeof haorooms!=undefined){
 }

用了typeof之后,就不会报错了!这是typeof的应用之一!

此外,typeof还可以进行数据类型的判断!如下:

var haorooms="string"; console.log(haorooms); //stringvar haorooms=1; console.log(haorooms); //numbervar haorooms=false; console.log(haorooms); //booleanvar haorooms; console.log(typeof haorooms); //undfinedvar haorooms= null; console.log(typeof haorooms); //objectvar haorooms = document; console.log(typeof haorooms); //objectvar haorooms = []; console.log(haorooms); //objectvar haorooms = function(){}; console.log(typeof haorooms) //function 除了可以判断数据类型还可以判断function类型

很明显,对于typeof,除了前四个类型外,null、对象、数组返回的都是object类型;

instanceof 篇

可以用其判断是否是数组。

var haorooms=[];console.log(haorooms instanceof Array) //返回true

constructor 篇

constructor就是返回对象相对应的构造函数。

判断各种数据类型的方法:

console.log([].constructor == Array);console.log({}.constructor == Object);console.log("string".constructor == String);console.log((123).constructor == Number);console.log(true.constructor == Boolean);function employee(name,job,born){
 this.name=name;
 this.job=job;
 this.born=born; }var haorooms=new employee("Bill Gates","Engineer",1985); console.log(haorooms.constructor); //
输出function employee(name, jobtitle, born){this.name = name; this.jobtitle = job; this.born = born;}

通过输出haorooms.constructor,可以看出constructor就是返回对象相对应的构造函数。

热心网友 时间:2022-04-23 17:30

Array.isArray()和 

var arr = [];
if (Array.isArray(arr)) {
    alert('是数组');
}

// 或者
if (arr instanceof Array) {
    alert('是数组');
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
刘德华《忘情水》歌词 忘情水专辑 忘情水 求 忘情水-刘德华 无损音质 华东理工大学长江学院怎么样 东华理工大学长江学院机械工程系考研情况 南昌教育学院跟东华理工大学的长江学院比哪个好? 东华理工大学和东华理工大学长江学院是同一所吗 东华理工大学长江学院考研难吗 CKC证书是啥意思? ckc康复是什么意思? 前端面试题,js怎么判断数组类型? js 判断是否为数组 js如何判断是不是数组 js里怎么确定一个元素是不是数组 js里判断变量是数组还是对象的四种方法 js判断是否是数组及常见类型判断 js如何判断数组 Js中如何判断一个对象为数组类型 要怎么确定物业服务合同纠纷管辖法院 解决物业与业主的矛盾业主应该怎样做 关于物业服务合同纠纷的几个常见问题 物业服务合同纠纷有些什么特征 无效的物业服务合同纠纷如何处理 物业管理纠纷的处理依据有哪些? 最高人民法院关于审理物业服务纠纷案件是什么 常见的物业纠纷的解决办法有哪些? 有关物业的纠纷问题 物业管理纠纷有哪些应该如何处理 物业服务合同纠纷诉讼时效有多长时间 物业管理合同纠纷案例有哪些 js 判断数组是否为空数组 js 如何判断数组为空 JS判断数组中是否有重复值得三种实用方法 JS 判断某变量是否为某数组中的一个值 的几种方法 怎么cmd看ip地址 cmd怎么查ip 挂相框的那个专用钉子叫什么? 无痕钉挂画使用方法 ps相框专用胶含有甲醛吗 挂在墙上的相框专用名词时什么 南阳那有卖钉角机做相框用的专用钉框四个角连接 购买数码相框的小窍门 数码相框的功能是什么 数码相框是怎么一回事? 怎样DIY创意相框 如何自制相框? 数码相框的发展 相框有什么问题吗 如何自制小相框? 怎样钉相框不会破坏墙体?