js判断是否是数组及常见类型判断
来源:互联网 发布:单片机总线 编辑:程序博客网 时间:2024/05/22 16:38
前言
本篇是基础知识普及篇,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就是返回对象相对应的构造函数。
阅读全文
1 0
- js判断是否是数组及常见类型判断
- js判断类型 是否是数组Array
- js 是否是数组判断
- js判断对象是否是某一类型
- JS判断是否是数组Array
- js判断object是否是数组
- 判断是否是数组
- 判断是否是数组及数组维数
- 判断对象类型是否是Array的js脚本函数
- javascript判断是否是数组
- javascript 判断是否是数组
- 如何判断是否是数组
- js判断常见浏览器类型
- js:判断是否是空白
- js判断是否是ie
- js 判断是否是整数
- js判断是否是数字
- js 判断是否是数字
- c# WEBSERVICE
- [LeetCode P97] Interleaving String动态规划
- mysql引擎
- matlab的minboundrect.m 函数
- bootstrap表格的每一行添加一个按钮事件
- js判断是否是数组及常见类型判断
- 深入MNIST
- CSS属性(长期更新...)
- maven工程如何引用css和js文件
- TCP/IP协议与UDP协议的区别
- 转:各种开源软件许可license
- Mac的MySQL无法启动的原因
- App首次安装直接打开后点击Home键再打开App重新示例化的解决办法
- 1.1.4 Cassandra