JS之数据类型

基本数据类型:Undefined、Null、Boolean、String、Number、Symbol

复杂数据类型:Object

1、Undefined类型

只有一个值即undefined。对未声明的变量和声明过但未初始化的变量使用typeof都会返回undefined。

2、Null类型

只有一个值即null。null值表示一个空对象指针,所以用typeof操作符检测null值时会返回object。对于声明的变量将来用于保存一个对象,则可将其显示的设置为null。

3、Boolean类型

两个字面值:true、false。

能转换为false的值:false、' '、0、-0、NaN、null、undefined。

注意:空数组和空对象对应的布尔值都是 true。

4、Number类型

表示整数和浮点数

整数:十进制、八进制(严格模式下无效,抛出错误)、十六进制,进行算术时,所有的字面量都被转换成十进制。

浮点数:数值中必须包含一个小数点,且小数点后面至少有一位数字。永远不要测试某个特定的浮点数值!

ECMAScript能够表示的最小数值保存在Number.MIN_VALUE,最大数值保存在Number.MAX_VALUE。超出这个范围则自动转换成特殊的Infinity值,且该值不是能够参与计算的值。可以用isFinite()函数确定一个数值是否为有穷的。

NaN:Not a Number,是一个特殊的数值。任何涉及NaN的操作都会返回NaN,NaN与任何值都不相等,包括NaN本身。isNaN()函数确定参数是否"不是数值"。

数值转换:Number()、parseInt()、parseFloat()。

5、String类型

字符串,length属性取得其长度。字符串一旦创建,其值就不能改变。

字符串转换:toString()(null和undefined值没有这个方法),若传入参数,表示以进制转化。String()函数在不确定是否为null和undefined。

6、Symbol类型

表示一个独一无二的值。是一个函数而非对象。可以在指定的时候加一个参数,加参数只是一个对值的描述。不能与其他类型的值进行运算,可显示的转化为字符串、布尔值,不能转化为数值。

7、Object类型

一组数据和功能的集合。Object是所有对象的基础,所有对象都有以下基本的属性和方法:

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

hasOwnProperty(propertyName):检查给定的propertyName是否存在于当前对象(而非实例的原型中)。

isPrototypeOf(object):检查object是否为当前对象的原型。

propertyIsEnumerable(propertyName):检查propertyName是否能够使用for—in语句。

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

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

valueOf():返回对象的字符串、数值或布尔值表示。

对象转换成基本类型:首先会调用 valueOf ,然后调用 toString。

你可能感兴趣的:(JS之数据类型)