ES6 哪些关键词可用于实现继承

ES6 哪些关键词可用于实现继承

在这篇文章中,我们将讨论在ES6中实现继承时可以使用的关键词。在JavaScript中,使用“extends”、“this”和“super”关键词来实现继承。

Extends关键词: 使用extends关键词在类声明或类表达式中构建一个子类。父类的方法会传递给子类。

  • JavaScript this关键词: 关键词“this”指的是当前执行代码的对象。它指的是正在执行函数的对象。如果函数被称为普通函数,则“this”指的是全局变量或对象。
  • JavaScript super关键词: super关键词通过调用父类的构造函数来获取父类的方法和属性。它用于访问父对象、它的属性和方法。

让我们来演示一些关键词的示例。

示例1: 在这个示例中,apple类继承自fruits类,由于在console.log()中没有使用this关键词,所以父类数组中的值在子类中不被使用。

Javascript

<script> 
  class fruits { 
    constructor(benefits) { 
      this.benefits = ["vitamins", "minerals"]; 
    } 
  } 
  class apple extends fruits { 
    constructor(benefits) { 
      super(benefits); 
      console.log("apples provide : " + benefits.join(" and ")); 
    } 
  } 
  obj = new apple(["fibre", "lung strength"]); 
</script> 

输出:

apples provide : fibre and lung strength

示例2: 这段代码与之前的代码类似,但区别在于 在使用super方法之后,将其应用于benefits数组时 ,我们使用this关键字,它指向父类中定义的数组。

Javascript

<script> 
  class fruits { 
    constructor(benefits) { 
      this.benefits = ["vitamins", "minerals"]; 
    } 
  } 
  class apple extends fruits { 
    constructor(benefits) { 
      super(benefits); 
      console.log("apples provide : " + 
                  this.benefits.join(" and ")); 
    } 
  } 
  obj = new apple(["fibre", "lung strength"]); 
</script>

输出:

apples provide : vitamins and minerals

示例3: 在下面的示例中,我们定义了一个具有特定方法的类。 企鹅类扩展自父类,即鸟类。 父类中还有一个方法swim()。企鹅类包含了来自父类的所有方法。让我们看看在这个示例中如何使用“this”,“super”和“extends”关键字。

HTML

<script> 
   class birds { 
     constructor(name) { 
       this.name = name; 
     } 
     eat() { 
       console.log("birds eat"); 
     } 
     sleep() { 
       console.log("birds sleep"); 
     } 
   } 
   class penguin extends birds { 
     constructor(name) { 
       super(name); 
     } 
     swim() { 
       console.log("I'm " + this.name +  
                   " i can also swim!!"); 
     } 
   } 
   obj = new penguin("peggy"); 
   obj.swim(); 
   obj.sleep(); 
</script>

输出结果:

"I'm peggy i can also swim!!"
"birds sleep"

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程