1.undefined
使用var声明但未对其进行初始化时,这个变量的值就是undefined。
对未被初始化的值使用typeof会返回undefined值,而对未声明的变量执行typeof操作同样也会返回undefined。
2.null
是一个空的对象指针。使用type操作符检测会返回Object. null==undefined.
3.Boolean
true和false。对任何数据类型使用Boolean()函数,会返回一个布尔值。
数据类型 | true | false |
boolean | true | false |
string | 任何非空字符串 | “”(空字符串) |
number | 任何非0数值(包括无穷大) | 0和NaN |
Object | 任何对象 | null |
undefined | n/a | undefined |
4.Number
八进制:以0开头,后面所有数字都小于八,后面字符超出范围,按十进制解析;
十六进制:以0x开头,后面跟16进制数。
(1)浮点数值
浮点数值保存需要的内存是整数的两倍。
var a=3.12e5 //a=312000
(2)数值范围
Number.MIN_VALUE:5e-324
Number.MAX_VALUE:1.7976931348623157e+308
超出范围:+Infinity 无穷大 —Infinity 无穷小 使用isFinite()判断是否是在数值范围内,返回布尔值。
(3)NaN
表示一个本来要返回数值的错做数未返回数值的情况。
任何一个数值除以NaN都会返回NaN。 NaN==NaN // false
inNaN()函数,可以帮我们判断一个参数是不是数值,返回boolean值。
(4)数制转换
Number():可以用于任何数据类型;
parseInt():会忽略前面的空格找到第一个非空字符,继续解析直到遇到了非数字字符,可以传递第二个参数,解析的进制数;
parseFloat():解析每一个字符串,直到遇到了了一个无效的浮点数字符为止。
5.String
可以用单引号和双引号,但前后一定要匹配。
toString():基本每一个数据类型都具有这个方法,把它转化为字符串,但null和undefined没有。
String():如果由toString()方法,则调用该方法并返回结果。如果是null和undefined则返回原值。
6.Object
是一组数据和功能的集合。
constructor、hasOwnProperty、isPrototype、propertyIsEnumerable、toLocaleString()、toString()、valueOf()。