Ext惯用的方法
Ext常用的方法
#1 Ext.extend方法是用来实现类的继承。
子类继承下来的是父类中通过superclass.prototype方式定义的属性(包括用此方法定义的函数)。
var SuperC = function(config){}; SuperC.p1 = 'a'; SuperC.prototype.p2 = 'b'; //console.dir(SuperC); var SubC = function(config){ SubC.superclass.constructor.call(this,config); }; Ext.extend(SubC,SuperC); var subC1 = new SubC() console.log(subC1.p1);//undefined console.log(subC1.p2);//b
#2
apply及applyIf方法都是用于实现把一个对象中的属性应用于另外一个对象中,相当于属性拷贝。不同的是apply将会覆盖目标对象中的属性,而applyIf只拷贝目标对象中没有而源对象中有的属性。
【If :如果不存在则copy it】
#3
http://blog.sina.com.cn/s/blog_3ef2a82a0100gqno.html 写道
Ext.extend()函数提供了直接访问父类构造函数的途径,通过SubClass.superclass.constructor.call(this);
就可以直接调用父类的构造函数,这个函数的第一个参数总是 this,以确保父类的构造函数在子类的作用域里工作。
如果父类的构造函数需要传入参数,可以将所需的参数直接传递给它:
SubClass.superclass.constructor.call(this,config);
这样就得到了一个继承了父类的所有属性和函数的子类。
就可以直接调用父类的构造函数,这个函数的第一个参数总是 this,以确保父类的构造函数在子类的作用域里工作。
如果父类的构造函数需要传入参数,可以将所需的参数直接传递给它:
SubClass.superclass.constructor.call(this,config);
这样就得到了一个继承了父类的所有属性和函数的子类。