如何在javascript类之间使用实例方法

时间:2018-08-22 20:12:53

标签: javascript oop object inner-classes

我创建了一个类,其中我要基于应该在给定类中首先计算的R G B颜色值来计算HEX颜色值。我在函数上没问题,但想检查一下我是否也可以在类上做。

我的动机是最后计算HSL颜色值,并从中可以运行该类的多个实例以显示随机创建的颜色的细微差别。

基本上我想知道如何在rgb()实例方法中使用hex()实例方法值。

这是codepen上的代码:

https://codepen.io/buzzer79/pen/LJVxmP/

我也将其复制到这里:

class Colors {
  constructor(R, G, B, H, E, X) {
    this.R = R;
    this.G = G;
    this.B = B;
    this.H = H;
    this.E = E;
    this.X = X;
  }

  rgb() {
    //calculate RGB
    this.R = Math.floor(Math.random() * 255);
    this.G = Math.floor(Math.random() * 255);
    this.B = Math.floor(Math.random() * 255);

    return this.R + "," + this.G + "," + this.B;
  }

  hex() {
    //calcuate hex
    this.H =
      this.R.toString(16).length < 2
        ? "0" + this.R.toString(16)
        : this.R.toString(16);
    this.E =
      this.G.toString(16).length < 2
        ? "0" + this.G.toString(16)
        : this.G.toString(16);
    this.X =
      this.B.toString(16).length < 2
        ? "0" + this.B.toString(16)
        : this.B.toString(16);
    // return this.H+''+this.E+''+this.X;
  }
}

0 个答案:

没有答案