您的位置:首页 > Web前端 > JavaScript

js中数据类型的判断

2016-09-18 16:59 351 查看

javascript中数据类型的判断方法:typeof、instanceof、constructor、 prototype

例题解释:

var a = 1;
var b = false;
var c = "abc";
var d = [1,2,3];
var e = new Date();
var f = function(){console.log("function")};


使用typeof判断类型:
typeof a ⇒ number
typeof b ⇒ boolean
typeof c ⇒ string
typeof d ⇒ object
typeof e ⇒ object
typeof f ⇒ function


使用instanceof判断类型:
a instanceof Number ⇒ false
b instanceof Boolean ⇒ false
c instanceof String ⇒ false
d instanceof Array ⇒ true
e instanceof Date ⇒ true
f instanceof Function ⇒ true


使用constructor判断类型:
a.constructor === Number ⇒ true
b.constructor === Boolean ⇒ true
c.constructor === String ⇒ true
d.constructor === Array ⇒ true
e.constructor === Date ⇒ true
f.constructor === Function ⇒ true


使用prototype判断类型:
Object.prototype.toString.call(a) ⇒ [Object Number]
Object.prototype.toString.call(b) ⇒ [Object Boolean]
Object.prototype.toString.call(c) ⇒ [Object String]
Object.prototype.toString.call(d) ⇒ [Object Array]
Object.prototype.toString.call(e) ⇒ [Object Date]
Object.prototype.toString.call(f) ⇒ [Object Function]


补充:

hasOwnProperty:是用来判断一个对象是否有你给出名称的属性或对象。不过需要注意的是,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员。

isPrototypeOf:是用来判断要检查其原型链的对象是否存在于指定对象实例中,是则返回true,否则返回false。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息