简单的数据类型
Undefined,Null,Boolean,Number,String
检测基本数据类型的 typeof 是操作符而不是函数
"undefined"----- 如果这个值未定义
"boolean"----- 如果这个值是布尔值 true/false 区分大小写的
"string"------ 如果这个值是字符串
"number"----- 如果这个值是数值
"object"----- 如果这个值是对象或者 null(空对象指针)
"function"----- 如果这个值是函数
检测引用类型 instanceof
- result = variable instanceof constructor alert(person instanceof Object); // 变量 person 是 Object 吗?
根据规定, 所有引用类型的值都是 Object 的实例, 因此在检测一个引用类型的值时和 Object 构造函数时, instanceof 始终会返回 true.
转型函数
- toString()// 数值, 布尔值, 对象和字符串值都有这个方法, 返回字符串的副本, null 和 undefined 没有这个方法
- String()// 在不知道值类型下可以使用这个函数转换
要把某个值转换为字符串, 可以使用加号操作符把它与一个字符串 () 加在一起
Boolean()// 返回一个 Boolean 类型的值
有三个函数可以把非数值转换为数值
Number()转换为任何类型的数值
- parseInt() // 可以提供两个参数
- parseFloat()
最令人关注的 Number 类型
- var floatnum=1.0// 解析为整数 1
- var floatnum=1.// 解析为 1, 小数点后没有数字
!!! 永远不要测试某个特定的浮点数值
NaN 非数值
凡是涉及到任何 NaN 的操作 (NaN/10) 都会返回 NaN
NaN 与任何值都不相等, 包括本身
alert(NaN==NaN);//false
isNaN()在接收到一个值后会尝试将这个值转换为数值, 某些不是数值的值会转换为数值, 例如字符串 10 或者 Boolean 值, 而任何不能转换为数值的值都会导致这个函数返回 true
String 类型
双引号单引号表示都可以
字符串一旦创建, 它们的值就不会被改变, 要改变某个变量保存的字符串, 首先要销毁原来的字符串, 然后用另一个包含新值字符串填充该变量
来源: http://www.jianshu.com/p/fd7b5d358426