JavaScript笔记—数据类型
一、变量
不要改变变量的类型。
二、数据类型
1、基本数据类型
(1) Undefined类型
- var 声明变量没有初始化的变量值为undefined.
- 未声明和未初始化的变量执行typeof操作返回的也是undefined
(2)Null类型
- 空对象指针,如果要定义一个变量保存对象,初始化时赋值为null
- undefined派生自null,null == undefined
(3)Boolean类型
- 0、NaN、''、null、undefined都会返回false
(4)Number类型
- 不要做相等的算术计算,例如 0.1 + 0.2 == 0.3 //!=
- 浮点数会尽可能的转换为整数
- Number()、parseInt()、parseFloat()方法:
- Number():尽可能的转换成数值,如果字符串中不是纯数值的话返回NaN,undefined转换成NaN
- parseInt():如果第一个字符不是数字字符或者负号返回NaN
- parseFloat():解析到遇见一个无效的浮点数字字符为止
(5)String类型
- 字符串不可变,一旦创建不能改变值
- toString()转换为字符串,null和undefined返回"null"和"undefined"
2、引用类型
(1)Object类型
- 属性和方法:
- constructor:指向创建当前对象的函数,var o = new Object();指向Object()
- hasOwnProperty():检查给定属性在当前对象实例中
- toString():返回对象字符串表示
- valueOf():返回字符串,数值和布尔值,一般和toString()返回值相同
操作符
- 相等操作符是先转换再比较,全等操作符是先比较后转换
- NaN == NaN //false
- null == undefined //true
语句
- for-in 遇到对象的变量值为null或undefined时不执行循环体
- break退出循环,continue退出本次循环
- switch语句是为了解决大量的if else语句,没有break就是合并两种情况
- switch比较时用的是全等操作符
函数
-
return没有返回值,返回的是undefined
-
参数存在arguments类数组对象中
function a(name,data){ alert(name + data); alert(name + arguments[0]); alert(arguments[1]) } a(1) -
argument[0]的值和name值同步,访问不同的内存空间
-
argument的长度由传入参数个数决定的,不是定义时命名参数个数决定的

浙公网安备 33010602011771号