javasript数据类型以及如何判断数据类型
在javascript里面一共有
5种基本的数据类型,分别是:Number,String,Boolean,Null,Undefined
7种引用类型,分别是:Object类型,Array类型,Date类型,RegExp类型,Function类型,基本包装类型,单体内置对象。
*注“引用类型的值(对象)是引用类型的一个实例。在ECMAScript中,用于将数据和功能结合在一起。它长被成为类,但这种称呼并不恰当”[1]
其中如何判断数据类型,当我们要判断一个变量属于什么数据类型时,javascript提供了那些方式让我们判断呢?
以基本数据类型Number和引用类型Array类举例
//方法1:typeof
var b = 222; var c= [1,2,3]; alert(typeof b);//number alert(typeof c);//object
//方法2 instanceof 该方法只限于引用类型使用。而且要注意大小写
1 var b = 222; 2 var c= [1,2,3]; 3 alert(b instanceof number);//报错 4 alert(c instanceof Array);//true 5 alert(d instanceof array);//true
//方法3 constructor
1 var b = 222; 2 var c= [1,2,3]; 3 alert(c.constructor === Array);//true 4 alert(b.constructor === Number);//true 这里应该是javascript自动把变量转为了基本包装类型
//方法4 prototype 要注意大小写
1 var b = 222; 2 var c= [1,2,3]; 3 alert(Object.prototype.toString.call(b)=== '[Object Number]');//false 4 alert(Object.prototype.toString.call(c)=== '[Object Array]');//false 5 alert(Object.prototype.toString.call(b) === '[object Array]') //true 6 alert(Object.prototype.toString.call(c) === '[object Array]') //true
引用:
[1][高性能JavaScript编程].(High.Performance.JavaScript).Nicholas.C.Zakas.中英对照版
posted on 2017-02-03 22:24 lukelin1989 阅读(2279) 评论(0) 编辑 收藏 举报