0%

变量类型和计算

变量类型分为值类型和引用类型。

1
2
3
4
var a = 100;
var b = a;
a = 200;
console.log(b); //100

这就是值类型,变量之间不会相互影响,a位置存的就是一个数字,b位置野村的是相同的数字而已

1
2
3
4
var a = {age:20};
var b = a;
b.age = 21;
console.log(a.age); //21

引用类型(包含数组,对象和函数)的变量之间会互相影响,a位置存的是一个指针指向该对象,实际上对象存在另外的地方,定义的b存放的指针也指向该对象,所以修改了对象的指针,为了让内存共用空间才出现了引用类型。

JS使用typeof可以得到的类型

typeof一共有7种形式,分别是undefined,object,string,boolean,symbol,function和number,注意typeof null也是object!只能区分值类型,不能区分除函数外的其他引用类型。


值类型的强制类型转换

  1. 字符串拼接
    1
    2
    var a = 100 + 10;  // 110
    var b = 100 + '10'; // 10010
  2. ==运算符
    1
    2
    3
    100 == '100'; //true
    0 == ' '; //true
    null == underfined //true
  3. if语句
    0,NaN,空字符串,null,undefined,false转换为false
  4. 逻辑运算

何时使用===

三等无类型转换,

1
2
3
if(obj.a == null) {
// 这里相当于obj.a === null || obj.a === undefined
}

除此之外,全部用三等。


JS的内置函数

不考虑运行环境,内置的数据封装类对象有如下9种

  1. Object
  2. Array
  3. Boolean
  4. Number
  5. String
  6. Function
  7. Date
  8. RegExp
  9. Error

JS按照存储方式分为几种类型

分为值类型和引用类型。
引用类型是变量指针的赋值。


如何理解JSON

JSON不是函数,和Math一样是个内置对象,常用的有两个方法,分别是字符串转对象和对象转字符串的parse和stringify方法


2017 年 12月 30日