1. typeof
- 可以判断数据类型,它返回表示数据类型的字符串(返回结果只能包括number,boolean,string,function,object,undefined);
- 可以使用typeof判断变量是否存在(如if(typeof a!=“undefined”){…});
- Typeof 运算符的问题是无论引用的对象是什么类型 它都返回object
typeof {}
typeof [1,2]
typeof /\s/
2.instanceof
原理 因为A instanceof B 可以判断A是不是B的实例,返回一个布尔值,由构造类型判断出数据类型
console.log(arr instanceof Array );
console.log(date instanceof Date );
console.log(fn instanceof Function );
3.通过Object下的toString.call()方法来判断
Object.prototype.toString.call();
console.log(toString.call(123));
console.log(toString.call('123'));
console.log(toString.call(undefined));
console.log(toString.call(true));
console.log(toString.call({}));
console.log(toString.call([]));
console.log(toString.call(function(){}));
4.根据对象的contructor判断
console.log('数据类型判断' - constructor);
console.log(arr.constructor === Array);
console.log(date.constructor === Date);
console.log(fn.constructor === Function);
5.jq中判断数据类型的方法
jQuery提供了一系列工具方法,用来判断数据类型,以弥补JavaScript原生的typeof运算符的不足。以下方法对参数进行判断,返回一个布尔值。
jQuery.isArray();是否为数组
jQuery.isEmptyObject();是否为空对象 (不含可枚举属性)。
jQuery.isFunction():是否为函数
jQuery.isNumberic():是否为数字
jQuery.isPlainObject():是否为使用“{}”或“new Object”生成对象,而不是浏览器原生提供的对象。
jQuery.isWindow(): 是否为window对象;
jQuery.isXMLDoc(): 判断一个DOM节点是否处于XML文档中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)