js如何查看对象的类型

转自:http://jingyan.baidu.com/article/a681b0de331a733b18434628.html

js,判断对象的类型,typeof,constructor

  • |
  • 浏览:2884
  • |
  • 更新:2014-05-27 20:45

js判断对象的类型

javascript,判断对象的类型,typeof,constructor

用typeof操作符判断对象类型:(红色文字,是上面一句代码的执行结果)

用对象的构造函数属性(constructor),来判断对象的类型:

区别:

constructor判断对象的类型,会比typeof更精确,constructor能获取一些复杂对象的类型,typeof做不到。

下面有一段程序示例:

代码示例:

<script type="text/javascript" charset="utf-8">

var s='a string';

var arr=[];

var obj=new Object();

if(typeof s=='string'){

console.log( "typeof s=='string'  true"); //true

}

//打开浏览器的控制台,可以看到此代码的输出

console.log( 's.constructor==String  :'+ (s.constructor==String) );

console.log( 'arr.constructor==Array  :'+ (arr.constructor==Array) );

console.log( 'obj.constructor==Object  :'+ (obj.constructor==Object) );

//复杂类型的对象,判断其类型

function User(name , age){

this.name=name;

this.age=age;

}

var u=new User();

console.log( 'typeof u  :'+typeof u );  //输出object  //显然,使用typeof判断复杂类型的对象,就失效了,但使用constructor就可以获取其真实类型

console.log( 'u.constructor.name  :'+u.constructor.name );

</script>


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值