javascript - 检查某个类的对象的值是否已被更改

标签 javascript html css node.js

我需要检查对象的元素是否已更改并根据它更改另一个值。

例如:

class myClass{
  constructor(value1, value2){
    this.value1 = value1
    this.value2 = value2
    this.values = {
      value1: this.value1,
      value2: this.value2
    }
  }
}

var myObject = new myClass(2,4)
console.log(myObject.value1, myObject.values)

myObject.value1++ // ou myObject.value1 = 3
//expected log 3 {"value1": 3, "value2": 4}
console.log(myObject.value1, myObject.values)

最佳答案

使 myClass 实例成为单一事实来源。

class myClass{
  constructor(value1, value2){
    this.value1 = value1
    this.value2 = value2
    const container = this;
    
    this.values = {
      get value1() {
        return container.value1
      },
      get value2() {
        return container.value2
      }
    }
  }
}

var myObject = new myClass(2,4)
console.log(myObject.value1, myObject.values)

myObject.value1++ // ou myObject.value1 = 3
//expected log 3 {"value1": 3, "value2": 4}
console.log(myObject.value1, myObject.values)

关于javascript - 检查某个类的对象的值是否已被更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63148415/

相关文章:

java - Vaadin 为网格中的选定行设置背景颜色

html - Bootstrap 4 : Align items inside flexbox item

javascript - 在 PHP while 循环中随机化 jquery 中 "DIV"的边框颜色

javascript - 使用 javascript 将内容添加到 div - 'Uncaught SyntaxError: Invalid or unexpected token' ?

javascript - php 中的 MySql 查询仅在以 json 编码时返回最后的结果

javascript - 可继承的 CSS 属性应该接受值 “initial” 吗?

javascript - 在 JavaScript 中,双引号 ("") 和不带双引号的属性名有什么区别?

javascript - 您如何使用 Angular 处理需要授权 token 的下载链接?

css - 如何将 konvajs 中的元素居中?

javascript - NodeJS 的多个 module.exports