【问题标题】:Having variables in the constructor vs in the actual class?在构造函数和实际类中有变量?
【发布时间】:2021-10-25 23:49:26
【问题描述】:

下面的第一个代码示例是我今天正在做的,我在构造函数中初始化全局变量。

但是,如第二个示例所示,将全局变量移出类会不会有任何危害?

class Alert {
  constructor(alert) {
    this.load = JSON.parse('{}');
    this.alert = alert;
    this.#coolDownTime = 0;
  };

  #coolDownTime;
}

vs 只是做

class Alert {
  constructor(alert) {
    this.alert = alert;
  };

  #coolDownTime = 0;
  #load = JSON.parse('{}');

}

【问题讨论】:

    标签: javascript node.js oop ecmascript-6 ecmascript-2016


    【解决方案1】:

    JavaScript 类是函数,它们是对象。 (POOP(原型面向对象编程))。

    这是一个有趣的概念,既然 JavaScript 类是函数,那么我们实际上要写什么呢? JavaScript ES6 类只是原型的语法糖。 这意味着,你的两个想法实际上是相同的。
    这正是创建方法的工作原理。

    这是一个很好的参考: Are ES6 classes just syntactic sugar for the prototypal pattern in Javascript?

    【讨论】:

      猜你喜欢
      • 2023-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-19
      • 2014-01-12
      • 2023-03-24
      • 1970-01-01
      相关资源
      最近更新 更多