您的位置 首页 > 娱乐休闲

js判断是否是数组及常见类型判断

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

typeof篇

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

//jack 是全局变量

if(jack!=undefined){

}//js会报错,说"Uncaught ReferenceError: jack is not defined"

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

if(typeof jack!=undefined){

}

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

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

var jack="string"; con(jack); //string

var jack=1; con(jack); //number

var jack=false; con(jack); //boolean

var jack; con(typeof jack); //undfined

var jack= null; con(typeof jack); //object

var jack= document; con(typeof jack); //object

var jack= []; con(jack); //object

var jack= function(){}; con(typeof jack) //function 除了可以判断数据类型还可以判断function类型

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

instanceof 篇

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

var jack=[];

con(jack instanceof Array) //返回true

constructor 篇

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

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

con([].constructor == Array);

con({}.constructor == Object);

con("string".constructor == String);

con((123).constructor == Number);

con == Boolean);

function employee(name,job,born){

;

;

; }

var jack=new employee("Bill Gates","Engineer",1985);

con); //输出function employee(name, jobtitle, born){ = name; = job; = born;}

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

文章地址:

文/丁向明

做一个有博客的web前端自媒体人,专注web前端开发,关注用户体验,加我qq/微信交流:6135833

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“js如何判断一个对象是否是数组”边界阅读