jquery源码阅读知识储备(6)typeof 和 instanceof的结合使用
2011-02-15 23:10
447 查看
在java里判断一个对象是否是另外一个对象的实例,可以用instanceof或instanceof在对象类型的强制转换,先判断是否是某种类型,是的话再强制转换成改类型。
typeof用以获取一个变量的类型,typeof一般只能返回如下几个结果:number,boolean,string,function,object,undefined。对于Array,Null等特殊对象使用typeof 一律返回object,这正是typeof的局限性。
Variable typeof Variable Variable.constructor
{ an: “object” } object Object
[ “an”, “array” ] object Array
function(){} function Function
“a string” string String
55 number Number
true boolean Boolean
new User() object User
如果我们希望获取一个对象是否是数组,或判断某个变量是否是某个对象的实例则要选择使用instanceof。
如
再如:
而在js里:
var obj = new Object(); var array = new Array(1,2,3,4); alert(typeof(obj));//object alert(typeof(array));//object alert(obj instanceof Array);//false alert(array instanceof Array);//true
typeof用以获取一个变量的类型,typeof一般只能返回如下几个结果:number,boolean,string,function,object,undefined。对于Array,Null等特殊对象使用typeof 一律返回object,这正是typeof的局限性。
Variable typeof Variable Variable.constructor
{ an: “object” } object Object
[ “an”, “array” ] object Array
function(){} function Function
“a string” string String
55 number Number
true boolean Boolean
new User() object User
if ( num.constructor == String ) // If it is, then parse a number out of it num = parseInt( num ); // Check to see if our string is actually an array if ( str.constructor == Array ) // If that's the case, make a string by joining the array using commas str = str.join(',');
如果我们希望获取一个对象是否是数组,或判断某个变量是否是某个对象的实例则要选择使用instanceof。
如
var a=new Array(); alert(a instanceof Array);//会返回true // 同时alert(a instanceof Object)也会返回true;这是因为Array是object的子类。
再如:
function test(){}; var a=new test(); alert(a instanceof test)//会返回true。
而在js里:
相关文章推荐
- jquery源码阅读知识储备(4)关于js中if的解惑
- jquery源码阅读知识储备(11)数学方法(四舍五入)
- jquery源码阅读知识储备(5)call方法和apply方法接触
- jquery源码阅读知识储备(9)javascrpt中的函数知识(待续)
- jquery源码阅读知识储备(3)exec() 方法和match方法
- jquery源码阅读知识储备(4)关于js中if的解惑
- jquery源码阅读知识储备(7)JS函数中的argument属性
- jquery源码阅读知识储备(11)javascrpt中的数字比较
- jquery源码阅读知识储备(1)
- jquery源码阅读知识储备(2)js中等号的秘密
- jquery源码阅读知识储备(5)call方法和apply方法接触
- jquery源码阅读知识储备(3)exec() 方法和match方法
- jquery源码阅读知识储备(10)javascrpt中的数字(待续)
- 简便使用jQuery-源码阅读全局架构设计的理解
- jQuery-源码阅读,使用init()而不用普通原型模式的原因
- MetaQ源码阅读及与Spring结合使用
- jquery源码阅读知识储(8)Javascript引用和作用域的理解
- Windows下使用sbt打造Intellij Idea环境下Spark源码阅读环境
- 使用jQuery开发一个响应式超酷整合RSS信息阅读杂志
- google map api 与jquery结合使用(1)--控件,监听器[转帖]