zoukankan      html  css  js  c++  java
  • koa 基础(十七)原生 JS 中的类、静态方法、继承

    1.app.js

    /**
     * 原生 JS 中的类、静态方法、继承
     * es5中的类和静态方法
     */
    function Person(name, age) {
      // 构造函数里面的方法和属性
      this.name = name;
      this.age = age;
      this.run = function () {
        console.log(`${this.name} --- ${this.age}`)
      }
    }
    
    // 原型链上面的属性和方法可以被多个实例共享
    Person.prototype.sex = '男';
    Person.prototype.work = function () {
      console.log(`${this.name} --- ${this.age} --- ${this.sex}`)
    }
    
    // 静态方法
    Person.setName = function () {
      console.log('静态方法');
    }
    
    var p = new Person('zhangsan', '20'); /*实例方法是通过实例化来调用的,静态是通过类名直接调用*/
    p.run();
    p.work();
    
    Person.setName(); /*执行静态方法*/
    
    /**
     * 继承 -- 对象冒充继承和原型链继承
     * 对象冒充继承:没法继承原型链上面的属性和方法 
     * 原型链继承:可以继承构造函数里面以及原型链上面的属性和方法,实例化子类的时候无法给父类传参
     */
    function Web(name, age) {
      Person.call(this, name, age); /*对象冒充实现继承*/
    }
    
    Web.prototype = new Person(); /*原型链继承*/
    
    var w = new Web('李四', 20);
    w.run();

    .

  • 相关阅读:
    nginx的简介和配置文件实例(一)
    Tomcat基础配置(一)
    redis主从复制以及SSDB主主复制环境部署记录(四)
    redis主从原理介绍(三)
    redis介绍和安装和主从介绍(二)
    celery
    网络-sdn
    djang问题汇总
    django路由url
    django开发环境配置
  • 原文地址:https://www.cnblogs.com/crazycode2/p/10923658.html
Copyright © 2011-2022 走看看