to tantaiyizujs有prototype链的...可以实现重写那种效果...,不过没有super只能删除掉才可以得到super的方法.to lz
<html>
    <head>
        <title></title>
        <script language="javascript">
            function onClick()
            {
                var obj = new ClassB();
                alert(obj.getP1()); //返回undefined
            }
        </script>        <script language="javascript">
            function ClassA()
            {
                this.p1="pa";
            }
            ClassA.prototype.getP1=function()
            {
                return this.p1;
            }            function ClassB()
            {
                //ClassA.constructor.apply(this,arguments); //你要知道这个constructor可是Function的构造函数
ClassA.apply(this, arguments);
                this.p2="pb";
            }
            for(var n in ClassA.prototype)
                ClassB.prototype[n]=ClassA.prototype[n];            ClassB.prototype.getP2=function()
            {
                return this.p2;
            }    
        
            ClassB.prototype.getP1=function()
            {
//return ClassA.prototype.getP1.call(this) + " of ClassB"; //- -你这么写何用意?虽然也对
                return this.p1 + " of ClassB"; 
            }
        </script>
    </head>
    <body>
        <form method="post" id="form1" name="form1">
            <input type="button" value="OnClick" onclick="onClick()">
        </form>
    </body>
</html>

解决方案 »

  1.   

    楼主是想调用基累的方法吧!改了改
    <html>
        <head>
            <title></title>
            <script language="javascript">
                function onClick()
                {
                    var obj = new ClassB();
                    alert(obj.getP1());
                    alert(obj.getBaseP1());
                }
            </script>        <script language="javascript">
                function ClassA()
                {
                    this.p1="pa";
                }
                ClassA.prototype.getP1=function()
                {
                    return this.p1;
                }            function ClassB()
                {
                    // ClassA名字本事就是ClassA类的constructor!
                    ClassA.apply(this,arguments);
                    this.p2="pb";
                }            for(var n in ClassA.prototype)
                {
                    ClassB.prototype[n]=ClassA.prototype[n];
                }            ClassB.prototype.getP2=function()
                {
                    return this.p2;
                }    
                // 重写 getP1
                ClassB.prototype.getP1=function()
                {
                    return "New getP1 of ClassB";
                }
                // 调用基类 getP1
                ClassB.prototype.getBaseP1=function()
                {
                    return ClassA.prototype.getP1.call(this) + " of ClassA";
                }
            </script>
        </head>
        <body>
            <form method="post" id="form1" name="form1">
                <input type="button" value="OnClick" onclick="onClick()">
            </form>
        </body>
    </html>
      

  2.   

    补充一句,如果不重写getP1,直接调用就行了,
    主要用到原型链的概念!
    <html>
        <head>
            <title></title>
            <script language="javascript">
                function onClick()
                {
                    var obj = new ClassB();
                    alert(obj.getP1());
                    //alert(obj.getBaseP1());
                }
            </script>        <script language="javascript">
                function ClassA()
                {
                    this.p1="pa";
                }
                ClassA.prototype.getP1=function()
                {
                    return this.p1;
                }            function ClassB()
                {
                    // ClassA名字本事就是ClassA类的constructor!
                    ClassA.apply(this,arguments);
                    this.p2="pb";
                }            for(var n in ClassA.prototype)
                {
                    ClassB.prototype[n]=ClassA.prototype[n];
                }            ClassB.prototype.getP2=function()
                {
                    return this.p2;
                }
                /*
                // 重写 getP1
                ClassB.prototype.getP1=function()
                {
                    return "New getP1 of ClassB";
                }
                // 调用基类 getP1
                ClassB.prototype.getBaseP1=function()
                {
                    return ClassA.prototype.getP1.call(this) + " of ClassA";
                }
                */        </script>
        </head>
        <body>
            <form method="post" id="form1" name="form1">
                <input type="button" value="OnClick" onclick="onClick()">
            </form>
        </body>
    </html>
      

  3.   

    第五章 国外著名综合性检索系统作业:
    1.什么是参考数据库?它的用途是什么?
    2.列出国外常用的参数数据库(不少于7个)
    3.SCI的编排结构有哪些?它有哪些检索方法?
    4.Web of Science的检索功能有哪些?
    5.Ei的体系结构是怎么样的?它的检索方法有哪些?
    6.SA的检索方法有哪些?
    7.CSA数据库的特点与功能有哪些?检索方式有哪些?
    8.CA有哪些特点?上机作业20081104