今天斗完地主,发现芋头童鞋在群里面提了一个很有趣的一个问题:
下列代码使Test方法类具有一个静态属性arr(数组)
var Test=function(){ } Test.prototype={ arr:[] } var test1=new Test(); test1.arr.push('ddd') var test2=new Test(); alert(test2.arr.length) //1他问为什么两个实例(test1和test2)会共用一个arr数组。他要的是独立实例具有独立的那个arr(数组)属性,我刚开始还以为他问怎样可以共用一个数组。
后来给他提了一个解决方法:
下列代码使隶属于Test方法类的两个实例test1和test2具有各自的arr(数组)属性
var Test=function(){ this.arr=[];//原理很简单,初始化的时候使当前实例(this)的arr(数组)属性(来源于对象原型:T.........[ More Detail ]