小编ela*_*nvi的帖子

JavaScript 中的类属性

我有一个关于类属性的问题。我将创建一个示例以更好地理解。假设我们有一堂课。

   class Person {}
Run Code Online (Sandbox Code Playgroud)

我们想添加一个属性。我们该怎么做呢?根据我的阅读,有两种方法:

  class Person {myProperty ='Something'} //As shown at https://javascript.info/class. If we use console.log(Person) the property will not show
Run Code Online (Sandbox Code Playgroud)

现在让我们创建另一个扩展 Person 的类,假设 Athlete 和我想更改 myProperty:

  class Athlete extends Person{// If we use console.log(Athlete.myProperty ) it will show undefined
       myProperty='Something else'// it changes the property

        writeSomething() {
            console.log(this.myProperty);
        }
   }
Run Code Online (Sandbox Code Playgroud)

现在让我们使用 Athlete 作为构造函数创建一个新对象

const athlete = new Athlete();
console.log(athlete)// It will have the property myProperty with value 'Something else'
Run Code Online (Sandbox Code Playgroud)

我的问题是:

  1. myProperty 存储在哪里,我在 Person 或 Athlete 中找不到它?
  2. 为什么我可以在 writeSomething() …

javascript prototype class

5
推荐指数
1
解决办法
1876
查看次数

标签 统计

class ×1

javascript ×1

prototype ×1