JavaScript判断数据类型总结
2016-04-08 11:31
691 查看
1.数值型(Number):包括整数、浮点数。
2.布尔型(Boolean)
3.字符串型(String)
4.对象(Object)
5.数组(Array)
6.空值(Null)
7.未定义(Undefined)
那么如何判断一个变量的数据类型?
1.数值型
2.布尔型
3.字符串
4.未定义(Undefined)
对未声明和未初始化的变量执行typeof 操作符都返回undefined
5.对象(Object)
6.空值(Null)
7.数组(Array)
2.布尔型(Boolean)
3.字符串型(String)
4.对象(Object)
5.数组(Array)
6.空值(Null)
7.未定义(Undefined)
那么如何判断一个变量的数据类型?
1.数值型
比较常用的判断方法是:
function isNumber(val){ return typeof val === 'number'; }
还可以:
function isNumber(val){ return typeof val === 'number' && isFinite(val); }
isFinite() 函数用于检查其参数是否是无穷大,如果number是有限数字(或可转换为有限数字),那么返回true。否则,如果number是 NaN(非数 字),或者是正、负无穷大的数,则返回 false。
2.布尔型
function isBooleanType(val) { return typeof val ==="boolean"; }
3.字符串
function isStringType(val) { return typeof val === "string"; }
4.未定义(Undefined)
function isUndefined(val) { return typeof val === "undefined"; }
对未声明和未初始化的变量执行typeof 操作符都返回undefined
5.对象(Object)
由于当变量是空值Null时,typeof也会返回object,所以Object不能直接用 typeof 判断。
function isObj(str){ if(str === null || typeof str === 'undefined'){ return false; } return typeof str === 'object'; }
6.空值(Null)
判断空值用 val === null 即可
function isNull(val){ return val === null; }
7.数组(Array)
数组类型不可用typeof来判断。因为当变量是数组类型时,typeof会返回object。 这里有两种方法判断数组类型:
//方法一 function isArray1(arr) { return Object.prototype.toString.apply(arr) === '[object Array]'; } //方法二 function isArray2(arr) { if(arr === null || typeof arr === 'undefined'){ return false; } return arr.constructor === Array; }
相关文章推荐
- Json的解析
- JavaScript的总结博客
- 探真无阻塞加载javascript脚本技术
- JS中实现数组和对象的深拷贝和浅拷贝
- 大家从小到大,都玩儿过的一个庸俗的游戏,报到能被7整除的数字,或者尾数是7的数字,就应该罚唱歌。
- js事件
- 简述jsonp跨域实例
- 用户输入一个数字,在控制台中列出它的所有约数。
- js验证手机号不为空如果后面给出提示则不能实现添加
- 简单的计算题
- 用户输入一个数字n,计算1+2+3+4+……n的和。
- 在控制台输出1~1000之中,所有能被5整除,或者被6整除的数字。
- JS中showModalDialog 详细使用
- 求1~100之间所有的质数
- c#处理3种json数据的方式
- JSON.parse()和JSON.stringify()
- Js运动框架
- javascript设计模式(二)--闭包实现
- Javascript小笔记
- js null undefined 0