30
2017
03

js中判断一个对象的类型

as里边判断一个变量是不是某个类的实例,直接用 is 就行。

比如 

var a:Sprite=new Sprite();
trace(a is Sprite);

js里边没有 is 关键字,常用的替代方法是 instanceof ,对于new出来的实例,用instanceof可以,但是如果是简单类型,直接定义的,就识别不出来了。

比如:

var a=1.2;
console.log(a instanceof Number);//输出为false
var b="";
console.log(b instanceof String);//输出为false
var c=new Number();
console.log(c instanceof Number);//输出为true
var d=new String();
console.log(d instanceof String);//输出为true

Object.prototype.toString.call()。

比如:

var a=1.2;
Object.prototype.toString.call(a);//输出"[object Number]"
var b="";
Object.prototype.toString.call(b);//输出"[object String]"
var arr=[];
Object.prototype.toString.call(arr);//输出"[object Array]"
var d=new Date();
Object.prototype.toString.call(d);//输出"[object Date]"

但是无法判断自定义的类的实例。

比如:

function A(){}
var a=new A();
Object.prototype.toString.call(a);//输出"[object Object]"

参考:http://www.cnblogs.com/ww-ervin-72/p/5103540.html

« 上一篇下一篇 »

相关文章:

js窗口组件  (2024-9-20 11:2:38)

js拖拽工具库  (2024-9-20 9:34:48)

js中学物理仿真  (2022-9-27 9:16:49)

显示fps  (2020-1-19 9:16:17)

js保留有效数字  (2019-7-30 15:32:12)

js的parseInt方法  (2019-2-15 9:12:44)

闪电效果  (2017-11-28 15:4:19)

解九连环  (2016-12-1 20:58:11)

DataURL与File,Blob,canvas对象之间的互相转换的Javascript  (2016-11-25 14:58:41)

js生成条形码-barcode  (2016-10-12 15:59:51)

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。