javascipt 问题
如var object = {};
var object1 =function(){};
这两行的区别 一直觉得这比较扰人
还有就是
object.parameter ="11"
和object.prototype.parameter的区别是什么
为什么有时用.参数 有时用prototype.参数呢。。之间的差异是什么.
<script type="text/javascript"> var myFunction=function(){//匿名函数,可以作为'类'的构造函数进行面向对象操作 alert(this.prop1); }; myFunction.prototype.prop1='myFunction.prop1';//为myFunction增添属性(原型,可以被继承) myFunction.prop2='myFunction.prop2';//为myFunction增添属性(不能被继承) myFunction.prototype.func1=function(){alert('myFunction.func1');}; myFunction.func2=function(){alert('myFunction.func2');}; var myObject={prop1:'myObject.prop1'};//JSON对象 myObject.prop2='myObject.prop2';//与prop1是等同的 //myObject.prototype.prop3='myObject.prop3';//这样是不可以的 myObject.Objfunc=new myFunction();//将其作为myObject的成员,此时执行构造函数显示"myFunction.prop1" // myFunction();这样的调用是不允许的 alert(myFunction.prototype.constructor);//显示其构造函数 var valueOfObject="myObject:\n"; for(key in myObject){valueOfObject+=(key+"\t: "+ myObject[key]+"\n");};//遍历myObject alert(valueOfObject); valueOfObject="myFunction:\n"; for(key in myFunction){valueOfObject+=(key+"\t: "+ myObject[key]+"\n");};//遍历myFunction alert(valueOfObject); alert(myObject.Objfunc.prop1);//'myFunction.prop1' //alert(myObject.Objfunc.prop2);//undefined 比较一下,不用prototype定义的属性不能被继承,但可以以myFunction.prop2方式引用 myObject.Objfunc.func1();//对func1调用,显示'myFunction.func1' //myObject.Objfunc.func2();//这样操作同样不行 </script> </script>