JS的五种基本数据类型有Undefined(未定义类型)、Null(空引用数据类型)、 Boolean(布尔类型)、Number(数字类型)和String( 字符串类型)。
Undefined
未定义类型:
该类型只有一个值undefined。对未声明和未初始化的变量执行typeof操作符都返回undefined,任何定义后未赋值的变量其默认值都是undefined。
例如
var a //只定义不赋值
console.log (typeof a) //那么这就会返回undefined
null
空引用数据类型:
该类型的取值只有一个,即null。null可以表示一个空对象的指针
使用场景
如果一个变量准备将来保存对象,可以将该变量初始化null而不是其他,这样可以通过检查null值就 可以知道相应的变量是否已经保存了一个对象的引用
值得一提的是undefined 派生自null值。undefined == null 结果为 true,null与undefined用途不同,null可 以用来表示一个空对象,但是没有必要把一个变量的值显式设置为undefined
Boolean
布尔类型
布尔类型,取值为 true/false,通常用于条件判断
Number
数字类型
数字有很多类型,按照数字精度可以分为整数(int),单精度(float),双精度(double ),按照数 字的表示方法可以分为二进制(Binary),八进制(Octal),十进制(decimal system),十六进 制(Hexadecimal)。但是在JS中,所有的数字统一使用Number来表示。
其数值表示的方法有
十进制(由0~9组成): 55
八进制(首位为0,其他数值有0~7组成):017 转换为十进制为 15
十六进制(首位为0x,其他位为0~9,A~F):0xA1 转换为十进制是11
浮点数的科学计数法(尾数为10, 指数通常用e隔开):3.125e7 即31250000
数值范围
由于内存的限制,ECMAScript不能保存世界上所有的数值。 ECMAScript能表示的最小数值保存在 Number.MIN_VALUE中,能表示的最大的数值保存在Number.MAX_VALUE中。 如果某次计算的结 果超过了JavaScript数值范围,将会返回Infinity(正无极)或者-Infinity(负无极)。
数值范围检测
如何对一个数进行判断是否超出数值范围,我们通常用使用 isFinite()函数可以判断参数是否在最大值和最小值之间,如果在,返回true,否则返回false。
Var a = isFinite(9/0); // fals
特殊情况之返回非数值NaN
NaN表示一个本来要返回数值的操作数未返回数据的情况,即当要结果返回数值时,结果不是纯数字型,则会返回NaN
判断参数是否“不是数值”,当参数para不是数值的时候返回true
isNaN(NaN) //true
String
字符串类型
该类型表示由零个或者多个16位Unicode字符组成的字符序列,即字符串。字符串可以由双引号或者 单引号表示
字符字面量
\n 换行 \t 制表 \b 退格 \r 回车
\\ 斜杠 \' 单引号 \" 双引号
字符长度
通过length属性获取字符长度;例如
var a = '我是一个小baby'
console.log(a.length) //输出结果是 9