变量类型分为值类型和引用类型。
1 | var a = 100; |
这就是值类型,变量之间不会相互影响,a位置存的就是一个数字,b位置野村的是相同的数字而已
1 | var a = {age:20}; |
引用类型(包含数组,对象和函数)的变量之间会互相影响,a位置存的是一个指针指向该对象,实际上对象存在另外的地方,定义的b存放的指针也指向该对象,所以修改了对象的指针,为了让内存共用空间才出现了引用类型。
JS使用typeof可以得到的类型
typeof一共有7种形式,分别是undefined,object,string,boolean,symbol,function和number,注意typeof null也是object!只能区分值类型,不能区分除函数外的其他引用类型。
值类型的强制类型转换
- 字符串拼接
1
2var a = 100 + 10; // 110
var b = 100 + '10'; // 10010 - ==运算符
1
2
3100 == '100'; //true
0 == ' '; //true
null == underfined //true - if语句
0,NaN,空字符串,null,undefined,false转换为false - 逻辑运算
何时使用===
三等无类型转换,
1 | if(obj.a == null) { |
除此之外,全部用三等。
JS的内置函数
不考虑运行环境,内置的数据封装类对象有如下9种
- Object
- Array
- Boolean
- Number
- String
- Function
- Date
- RegExp
- Error
JS按照存储方式分为几种类型
分为值类型和引用类型。
引用类型是变量指针的赋值。
如何理解JSON
JSON不是函数,和Math一样是个内置对象,常用的有两个方法,分别是字符串转对象和对象转字符串的parse和stringify方法
2017 年 12月 30日