2016-10-13 00:16:48 点击量:72 标签: 收藏本文
方法一之 instanceof
instance,故名思义,实例,例子,所以instanceof 用于判断一个变量是否某个对象的实例,是一个三目运算式---和typeof最实质上的区别
a instanceof b?alert("true"):alert("false") //注意b值是你想要判断的那种数据类型,不是一个字符串,比如Array
举个例子:
var a=[];
console.log(a instanceof Array) //返回true
方法二之 constructor
在W3C定义中的定义:constructor 属性返回对创建此对象的数组函数的引用
就是返回对象相对应的构造函数。从定义上来说跟instanceof不太一致,但效果都是一样的
如: (a instanceof Array) //a是否Array的实例?true or false
(a.constructor == Array) // a实例所对应的构造函数是否为Array? true or false
举个例子:
- function employee(name,job,born){
- this.name=name;
- this.job=job;
- this.born=born;
- }
- var bill=new employee("Bill Gates","Engineer",1985);
- console.log(bill.constructor);
//输出function employee(name, jobtitle, born){this.name = name;
this.jobtitle = job; this.born = born;}
那么判断各种类型的方法就是:
- console.log([].constructor == Array);
- console.log({}.constructor == Object);
- console.log("string".constructor == String);
- console.log((123).constructor == Number);
- console.log(true.constructor == Boolean);
我们是一家提供综合软件外包与弱电工程服务的技术公司。
业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。
公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室