使用 toString.call()方法判断数据类型,
分享于 点击 41852 次 点评:277
使用 toString.call()方法判断数据类型,
使用Object.prototype上的原生toString()方法判断数据类型,使用方法如下:
Object.prototype.toString.call(value)1.判断基本类型:
Object.prototype.toString.call(null);//”[object Null]” Object.prototype.toString.call(undefined);//”[object Undefined]” Object.prototype.toString.call(“abc”);//”[object String]” Object.prototype.toString.call(123);//”[object Number]” Object.prototype.toString.call(true);//”[object Boolean]”
2.判断原生引用类型:
函数类型Function fn(){console.log(“test”);} Object.prototype.toString.call(fn);//”[object Function]”日期类型
var date = new Date(); Object.prototype.toString.call(date);//”[object Date]”数组类型
var arr = [1,2,3]; Object.prototype.toString.call(arr);//”[object Array]”正则表达式
var reg = /[hbc]at/gi; Object.prototype.toString.call(arr);//”[object Array]”自定义类型
function Person(name, age) { this.name = name; this.age = age; } var person = new Person("Rose", 18); Object.prototype.toString.call(arr); //”[object Object]”很明显这种方法不能准确判断person是Person类的实例,而只能用instanceof 操作符来进行判断,如下所示:
console.log(person instanceof Person);//输出结果为true
相关文章
- 暂无相关文章
用户点评