Ext.extend()的说明

xiaoxiao2026-06-12  8

Ext. extend方法是用来实现类的继承。 extend(Object subclass,Object superclass,[Object overrides] : Object 第一个参数:子类 第二个参数:父类 第三个参数:要覆盖的属性。 这里需要强调一下,子类继承下来的是父类中通过superclass.prototype方式定义的属性(包括用此方法定义的函数)。 例子如下: Js代码 <script type="text/javascript">                function S(){                }                S.prototype.s = "s";                S.prototype.s1 = "s1";                function C(){                    this.c = "c";                    this.c1 = "c1";                }                Ext.extend(C,S,{s1:"by c overload"});                var c = new C();                alert(c.s); //s                alert(c.s1); //by c overload            </script>   <script type="text/javascript"> function S(){ } S.prototype.s = "s"; S.prototype.s1 = "s1"; function C(){ this.c = "c"; this.c1 = "c1"; } Ext.extend(C,S,{s1:"by c overload"}); var c = new C(); alert(c.s); //s alert(c.s1); //by c overload </script> 如果按下面这个方式写就会提示c.s没有定义(undefind): Js代码 <script type="text/javascript">                function S(){                    this.s = "s";                    this.s1 = "s1";                }                function C(){                    this.c = "c";                    this.c1 = "c1";                }                Ext.extend(C,S,{s1:"by c overload"});                var c = new C();                alert(c.s); //undefind                alert(c.s1); //by c overload            </script>   <script type="text/javascript"> function S(){ this.s = "s"; this.s1 = "s1"; } function C(){ this.c = "c"; this.c1 = "c1"; } Ext.extend(C,S,{s1:"by c overload"}); var c = new C(); alert(c.s); //undefind alert(c.s1); //by c overload </script> 也可以通过如下方式来实现类的继承 Js代码 <script type="text/javascript">                function S(){                }                S.prototype.s = "s";                S.prototype.s1 = "s1";                C = Ext.extend(S,{s1:"by c overload"});                var c = new C();                alert(c.s); //s                alert(c.s1); //by c overload            </script>   <script type="text/javascript"> function S(){ } S.prototype.s = "s"; S.prototype.s1 = "s1"; C = Ext.extend(S,{s1:"by c overload"}); var c = new C(); alert(c.s); //s alert(c.s1); //by c overload </script> 此时,C是子类,S是父类 相关资源:敏捷开发V1.0.pptx
转载请注明原文地址: https://www.6miu.com/read-5050013.html

最新回复(0)