JS面向对象——组合使用构造函数模型与原型模型

Posted planetwithpig

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS面向对象——组合使用构造函数模型与原型模型相关的知识,希望对你有一定的参考价值。

该模型为创建自定义类型最常用的方式。

<!DOCTYPE html>
<html>
<head>
    <title>组合使用构造函数模型和原型模型</title>
    <script type="text/javascript">
        //组合使用构造函数模型和原型模型——构造函数模型用于定义实例属性,原型模型用于定义方法和共享属性。    
        function Student(name,age,sex)            
            this.name=name;
            this.age=age;
            this.sex=sex;
            this.friends=["Kitty","Court"];            
                
        Student.prototype=
            constructor:Student,
            sayName:function()
                alert(this.name);
            
        

        var stu1=new Student("Lucy",10,"girl");
        var stu2=new Student("Bob",9,"boy");
        stu1.friends.push("Van");
        alert(stu1.friends);//"Kitty,Court,Van"
        alert(stu2.friends);//"Kitty,Court"
        alert(stu1.friends===stu2.friends);//false
        alert(stu1.sayName===stu2.sayName);//true
    </script>
</head>
<body>
</body>
</html>

部分摘自《JavaScript高级程序设计(第3版)》

以上是关于JS面向对象——组合使用构造函数模型与原型模型的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript提高篇之面向对象之单利模式工厂模型构造函数原型链模式

JS面向对象三大特征:封装、继承、多态

JavaScript原型链

JS面向对象——构造函数模型

JS面向对象篇什么是原型?原型对象与实例对象构造函数的关系及相关方法

JavaScript之面向对象学习六原型模式创建对象的问题,组合使用构造函数模式和原型模式创建对象