javascript中的类

一、在构造函数中定义属性

二、在原形对象中定义共享方法

完整实例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script language="JavaScript">
    function sc(name,age,score) {
        //定义构造函数
        this.name = name
        this.age = age
        this.score = score
    }
    sc.prototype.display_score = function (){   //定义共享方法
        document.writeln("姓名:",this.name," ")
        document.writeln("年龄:",this.age," ")
        document.writeln("分数:",this.score,"<br>")
    }
    var s = new sc("张三",20,100)    //实例化一个对象,必须用new关键字
    s.display_score()    //调用共享方法


    function SC(name,age,sex,score) {   //(封装)
        //定义子类构造函数,继承自sc
        sc.call(this,name,age,score);
        this.sex = sex
    }

    SC.prototype = new sc()     //(继承)
    var S = new SC("李四",21,"男",100);
    S.display_score()//调用父类的display_score()

    //重定义子类自己的display_score()  (多态)
    SC.prototype.display_score = function () {
        document.writeln("姓名:",this.name," ")
        document.writeln("年龄:",this.age," ")
        document.writeln("性别:",this.sex," ")
        document.writeln("分数:",this.score,"<br>")
    }
    S.display_score()   //调用子类的display_socre()
    
</script>
</body>
</html>

  输出结果:

姓名:张三 年龄:20 分数:100
姓名:李四 年龄:21 分数:100
姓名:李四 年龄:21 性别:男 分数:100

  

 

posted @ 2018-03-24 10:50  961897  阅读(208)  评论(0编辑  收藏  举报