请问一个标准的构造函数内,是不是最好只有对象和属性?没有其他变量或函数语句什么的啊?
我模仿Array了写了一个类,构造函数里除了一个属性外都是函数语句,这么写是不是不标准啊?求个标准写法
JScript code
function f1(){
    var m,str=''
    for(var i=0; i<arguments.length;i++){
       str=str+arguments[i]+','
    }
    m=str.length
    str=str.substr(0,m-1);
    this.strs=str;
}
f1.prototype.toString=function(){
    return this.strs
}
n=new f1(7,8,9)
alert(n)
------解决方案--------------------
也未必啊  比如你的代码改成这样
function f1(){
   var m,str=''
   for(var i=0; i<arguments.length;i++){
      str=str+arguments[i]+','
   }
   m=str.length
   str=str.substr(0,m-1);
   this.strs=str;
}
f1.prototype.toString=function(){
   return this.strs
}
n=new f1(7,8,9);
n.strs=0;
alert(n)
就得不到正确结果了  而改成这样
function f1(){
   var m,str=''
   for(var i=0; i<arguments.length;i++){
      str=str+arguments[i]+','
   }
   m=str.length
   str=str.substr(0,m-1);
	this.toString=function(){
		return str;
	}
}
n=new f1(7,8,9);
alert(n)
貌似稍微好点  有些只希望度但不希望些的属性可以定义为私有的 然后用特权方法来访问 个人感觉  呵呵