变量相互引用的原因是:由于某些类型的变量是按地址存储的而导致的两个或多的参数的值互相影响:
测试如下:
数组类型测试Object类型测试实例化函数测试函数参数按地址传递测试var a=b=[1,2]; a.push(3); alert(a.length+' : '+b.length);
关于对节点对象操作产生的影响:
由于是函数是按值传递,所以在插入节点时,引用的是节点本身,而不是它的一个克隆,所以节点被转移了
如:
无标题文档
div1
div2
最后一个是关于节点的移除的,本来以为用innerHTML=""来移除元素内容的话,在IE中会把创建的节点从内存中彻底消除,事实并非如此,而是产生了很奇怪的现象:
如:
无标题文档来回重复点击add_div和inner试试,会发现奇怪的现象。点击alert,又会发现创建的div没从内存清除。
用removeChild方法会很正常的表现