typeof篇
typeof用的比较多的时候,是判断某个全局变量在不在,如果某个页面定义了一个全局变量。如果你做如下判断:
//jack 是全局变量
if(jack!=undefined){
}//js会报错,说\"大众Uncaught ReferenceError: jack is not defined\"大众
办理的方法是我们如下写:
if(typeof jack!=undefined){
}
用了typeof之后,就不会报错了!
这是typeof的运用之一!
此外,typeof还可以进行数据类型的判断!
如下:
var jack=\公众string\公众; console.log(jack); //string
var jack=1; console.log(jack); //number
var jack=false; console.log(jack); //boolean
var jack; console.log(typeof jack); //undfined
var jack= null; console.log(typeof jack); //object
var jack= document; console.log(typeof jack); //object
var jack= []; console.log(jack); //object
var jack= function(){}; console.log(typeof jack) //function 除了可以判断数据类型还可以判断function类型
很明显,对付typeof,除了前四个类型外,null、工具、数组返回的都是object类型;
instanceof 篇
可以用其判断是否是数组。
var jack=[];
console.log(jack instanceof Array) //返回true
constructor 篇
constructor便是返回工具相对应的布局函数。
判断各种数据类型的方法:
console.log([].constructor == Array);
console.log({}.constructor == Object);
console.log(\公众string\"大众.constructor == String);
console.log((123).constructor == Number);
console.log(true.constructor == Boolean);
function employee(name,job,born){
this.name=name;
this.job=job;
this.born=born; }
var jack=new employee(\"大众Bill Gates\"大众,\公众Engineer\"大众,1985);
console.log(jack.constructor); //输出function employee(name, jobtitle, born){this.name = name; this.jobtitle = job; this.born = born;}
通过输出jack.constructor,可以看出constructor便是返回工具相对应的布局函数。
文章地址:peixun.qietu.com
文/丁向明
做一个有博客的web前端自媒体人,专注web前端开拓,关注用户体验,加我qq/微信互换:6135833
http://dingxiangming.com