js引用

引用也是一个比较有意思的主题,JavaScript中的引用始终指向最终的对象,而并不是引用自己,用个例子来解释一下。数组

var obj = {} var ref = obj; obj.name = "objectA" console.log(ref.name);//ref跟着添加了name属性 obj = ["one", "two", "three"];//obj指向了另外一个对象(数组对象) print(ref.name);//ref还指向原来的对象 print(obj.length);//3 print(ref.length);//undefined
运行结果:code

objectA
  objectA
   3
  undefined

  obj只是对一个匿名对象的引用,因此,ref并不是指向它,当obj指向另外一个数组对象时能够看到,引用ref并未改变,而始终指向那个后来添加了name属性的"空"对象”{}”。理解这个以后,下面这个例子就不难了:
相关文章
相关标签/搜索