zoukankan      html  css  js  c++  java
  • 案例:借用父构造函数继承属性和方法

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
    </head>
    
    <body>
        <script>
            // 借用父构造函数继承属性
            // 1. 父构造函数
            function Father(uname, age) {
                // this 指向父构造函数的对象实例
                this.uname = uname;
                this.age = age;
            }
            Father.prototype.money = function() {
                console.log(100000);
    
            };
            // 2 .子构造函数 
            function Son(uname, age, score) {
                // this 指向子构造函数的对象实例
                Father.call(this, uname, age);
                this.score = score;
            }
            // Son.prototype = Father.prototype;  这样直接赋值会有问题,如果修改了子原型对象,父原型对象也会跟着一起变化
            Son.prototype = new Father();
            // 如果利用对象的形式修改了原型对象,别忘了利用constructor 指回原来的构造函数
            Son.prototype.constructor = Son;
            // 这个是子构造函数专门的方法
            Son.prototype.exam = function() {
                console.log('孩子要考试');
    
            }
            var son = new Son('刘德华', 18, 100);
            console.log(son);
            console.log(Father.prototype);
            console.log(Son.prototype.constructor);
        </script>
    </body>
    
    </html>

  • 相关阅读:
    远程支付技术方案
    软件架构设计(第2版)——程序员向架构师转型必备
    概念架构是什么
    项目报警机制
    编写有效用例
    移动支付的基本要素
    相机的日常维护和保养注意事项
    吴炜摄影教程随堂笔记1
    D80使用心得3
    项目沟通管理识别干系人
  • 原文地址:https://www.cnblogs.com/qtbb/p/11818477.html
Copyright © 2011-2022 走看看