原始类型和引用类型
原始类型
- 5种基本类型
- number
- string
- boolean
- null
- undefined
- 原始类型的值互不影响。
var color1 = 'red';
var color2 = color1;
console.log(color1)
console.log(color2)
color2 = 'blue'
console.log(color1)
console.log(color2)
复制代码
- 能够看出来原始类型的值互不影响,当color2改变值的时候,color1的值没有改变。
console.log(typeof 'red')
console.log(typeof 123)
console.log(typeof true)
console.log(typeof undefined)
console.log(typeof null)
复制代码
- 只有null的类型为object,并非null。
- 判断一个值是否为空的最好办法:和null比较,注意使用三个=号
console.log(value === null)
复制代码
引用类型
var obj = new Object()
复制代码
- 将一个对象赋值给一个变量的时候,再将这个变量赋值给另一个变量的时候,这两个变量是同一个指针。
var obj1 = new Object()
obj.name = 'aaa';
var obj2 = obj1;
console.log(obj1.name)
console.log(obj2.name)
obj2.name = 'bbb'
console.log(obj2.name)
console.log(obj1.name)
复制代码
var aa = [];
var bb = {};
function vv (){}
console.log(aa instanceof Array)
console.log(bb instanceof Object)
console.log(cc instanceof Functionn)
console.log(aa instanceof Object)
console.log(bb instanceof Object)
console.log(cc instanceof Object)
复制代码
var arr = [];
console.log(Array.isArray(arr))
复制代码