Js变量类型
值类型和引用类型
值类型(基本类型):5种,Number String Boolean null undefined
var a=10; var b=a; a=2; console.log(b);//10
a和b有各自的存储空间。
引用类型 (对象,数组,函数)
var a={grade:10} var b=a; b.grade=12; console.log(a.grade);//12
相当于a和b都是指针,指向同一个位置,位置中储存一个对象,则b.grade变了,a.grade也变了。(共用内存空间)
所有的引用类型
都具有对象的特性,即可自由扩展属性,(null除外);
都有一个_proto_(隐式原型)属性,属性值是一个普通的对象;
_proto_(隐式原型)属性值指向他的构造函数的prototype(显式原型)属性值;(===)
所有的函数
都有一个prototype(显式原型)属性,属性值是一个普通的对象;
当试图得到一个对象的某个属性时,如果这个对象本身没有这个属性,那么会去他的 _proto_(即他的构造函数的prototype)中查找;