MyCompany.UI 是一个对象,也就是我们经常叫的 命名空间或是模块在MyCompany.UI对象里面加个属性: UpdatePropertyAction,类型是函数MyCompany.UI.UpdatePropertyAction.prototype={
initialize:function(mapControl){
}}
上面是为函数的原型对象加入方法或是属性new MyCompany.UI.UpdatePropertyAction(p1,p2,doaction1,dodaction2);新建一个对象其实跟下面的语句是一样的var UpdatePropertyAction =function(Name, Type, onComplete, onError){
.......
}UpdatePropertyAction.prototype={
initialize:function(mapControl){
}}var temp = new UpdatePropertyAction(p1,p2,doaction1,dodaction2);只是把他放在一个模块MyCompany.UI下,以避免定义全局变量,避免和其他模块造成冲突
initialize:function(mapControl){
}}
上面是为函数的原型对象加入方法或是属性new MyCompany.UI.UpdatePropertyAction(p1,p2,doaction1,dodaction2);新建一个对象其实跟下面的语句是一样的var UpdatePropertyAction =function(Name, Type, onComplete, onError){
.......
}UpdatePropertyAction.prototype={
initialize:function(mapControl){
}}var temp = new UpdatePropertyAction(p1,p2,doaction1,dodaction2);只是把他放在一个模块MyCompany.UI下,以避免定义全局变量,避免和其他模块造成冲突
那请问一下:
UpdatePropertyAction.prototype={
initialize:function(mapControl){
} }
是什么意思呢?
prototype 代表的是什么?哪里有定义的呢?
initialize:function(mapControl){
}
是不是指的是 function initalize(mapControl){}
?
key: value;
}
是对象直接量,作用类似于:this.key = value;nitialize:function(mapControl)就是this.nitialize = function initalize(mapControl){} ;function initalize(mapControl){}只是定义了一个函数,跟上面是不同的,不过和下面的写法效果相同function initalizeFn(mapControl){}
this.nitialize = initalizeFn;