Js学习03--数据类型
一.数据类型
1.Js中常用的数据类型
简单数据类型
Number 数字类型
String 字符串类型
Boolean 布尔类型
Undefined 变量未初始化
Null 空类型
复杂数据类型
Object 对象类型
Array 数组类型
2.js中如何查看数据类型
typeof操作符
eg:console.log(typeof 100); //number;
console.log(typeof '阿楠'); // string;
3.数字类型
1)js中的所有数值都是number类型(不论整数还是小数)
2)由于内存的限制,ES不能保存世界上所有的数值。
eg:
//最大值
console.log(Number.MAX_VALUE);//1.7976931348623157e+308
//最小值
console.log(Number.MIN_VALUE);//5e-324
//无穷大:Infinity
如果超过了最大值,就会返回Infinity
3)NaN非法数字
js中当对数值进行计算没有结果返回,则返回NaN
eg: var str = NaN;
console.log(typeof str); //number;
4.字符串类型
由单引号或者双引号括起。
5.布尔类型
任何非零数值都是true,包括正负无穷大,只有0和NaN是false。
任何非空字符串都是true,只有空字符串是false。
任何对象都是true,只有Null和Undefined是false。
6.Null和Undefined
1)Undefined是一种比较特殊的类型,表示变量未赋值,这种类型只有一种值,就是undefined。
2)undefined是Undefined的字面量。
前者和10、‘abc’一样是一个常量。
后者和Number一样是一个数据类型。
3)typeof对没有初始化和没有声明的变量都会返回undefined。
4)undefined实际上是由null衍生出来的,如果比较undefined和 null是否相等则会返回true。
二.数据类型转变
1.toString()
将其他数据类型转换为字符串。
Ps:null和undefined没有toString()方法,强行调用会报错。
2.Number()函数
字符串转数字
1)如果是纯数字的字符串,则将其直接转换为数字。
2)如果字符串中含有非数字的内容,则转换为NaN。
3)如果字符串为一个空串或者一个全为空格的字符串,则转换为0。
4)undefined转数字为NaN。
5)null转数字为0。
3.parseInt()函数和parseFloat()函数
1)Number()函数中,无论混合字符串中是否含有整数都会返回NaN,而parseInt()函数和parseFloat()函数可以提取中有效数字。