您的位置:首页 > Web前端 > JavaScript

JavaScript的数据类型

2017-03-10 21:47 197 查看
JavaScript有5种简单数据类型(Undefined,Null,Boolean,Number,String)和一种复杂数据类型Object.只有这六种,再无其他

2.1.typeof操作符

可以使用typeof来检查所给的数据是什么类型。

typeof 1234; //number
typeof "hello"; //string
typeof (true); //boolean
typeof (message); //undefined
typeof (null); //Object

需要注意的是:

1.typeof是一个操作符而不是一个函数,所有可以不带括号

2.null的类型是Object,是因为Null是一个空的对象引用

2.2.Undefined类型

在使用var声明变量,但未对其初始化时,这个变量的值就是undefined,表示未被初始化的值

var message;
typeof (message); //undefined

2.3.Null类型

Null值表示一个空对象指针,所以使用typeof 检测时会返回object。

实际上,Undefined也是派生自null,所以下面会返回true:

alert(null == undefined); //true

在定义一个变量,但暂时还不想对它赋值时,可以使用null,不要使用Undefined。

2.4.Boolean类型

Boolean类型有两个值,true和false。注意这两个值是区分大小写的。如下:

typeof true; //"boolean"

typeof True; //"undefined"

转换:

要将一个值转换成boolean值时,可以使用Boolean()函数。

2.5.Number类型

数值类型分为整型,浮点型。进制也会不同

进制:

八进制前面第一个数必须是0

十六进制前面必须是0x

数值范围:

数值的大小是根据内存来的,如果超过了内存的限制,最大数会被转换为:Infinity,负数会被转换为-Infinity。

可以使用isFinite()函数检测数值是不是在(-Infinity,Infinity)之间,如果位于最大数和最小数之间就会返回true.

NaN:

NaN: Not a Number,这个数值表示一个本来要返回数值的操作却为返回数值的情况,这样就不会抛出错误了。

任何涉及NaN的操作都会返回NaN

NaN与任何值都不相等,包括NaN本身

isNaN()函数,会检测这个参数是不是“不是数值”

数值转换:

数值转换有三个函数,Number(),parseInt(),parseFloat()。

由于Number()函数在转换字符串时比较复杂且不够合理,因此在处理数值时使用parseInt(),parseFloat()这两个函数

parseInt()接受两个参数,第一个参数是要转换的参数,第二个是要转换的进制。该转换有一个特点,会把小数点后面的数字省略,只认整数部分。

parseFloat()将数值转换成字符串,会解析到第一个小数点后面。此方法只解析十进制,只接受一个参数

parseInt("070",8); //56
parseFloat("12.34.2"); //12.34

2.6.String类型

string类型可以使用length属性来获取字符串长度

toString()方法返回字符串的一个副本

String()方法将数值转换为字符串

2.7.Object类型

Object每个实例都具有以下方法和属性:

constructor:保留着用于创建当前对象的函数

hasOwnProperty(propertyName):用于检查给定的属性在当前对象实例中(不是在原型中)是否存在,参数用字符串形式指定

isPrototypeOf(object):用于检查传入的对象是否是当前对象的原型

propertyIsEnumerable(propertyName):用于检查给定的属性是否能够使用for-in语句来枚举,参数必须用字符串形式来指定

toLocaleString():返回对象的字符串表示,该字符串与执行环境的地区对应

toString():返回对象的字符串表示

valueOf():返回对象的字符串,数值或布尔值表示,通过与toString()方法的返回值相同
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: