使用setter方法更新现有对象值

问题描述 投票:0回答:1

我有一个使用setter方法model的对象:

var obj = {
   set model(object) {
   //method's logic
   }
}

我将值传递给obj:

obj = {x:10, y: 20, p: 15};

现在对象看起来像:

obj = {
  x:10, 
  y: 20, 
  p: 15
  set model(object){
  //method logic
  }
  };

请提示我如何使用setter方法更新对象的现有值并进行一些数学运算。例如,我调用setter方法并传递值:

obj.model = { x: { value: 33, operation: '*' },
z: { value: 75, operation: '+' }, 
p: { value: 4, operation: '%' } };

结果中,它应该返回:

console.log(obj); // -> {x:330, y: 20, z: 75, p: 3}
javascript object setter
1个回答
0
投票

[obj = {x:10, y: 20, p: 15};不是将参数传递给对象-这是分配!

改为尝试(就像您在下面几行一样:):

obj.model = {x:10, y: 20, p: 15};
© www.soinside.com 2019 - 2024. All rights reserved.