如何有条件地更改对象 属性 值比 JS 中的此解决方案更好的方式?

How to conditionally change object property value in the better way then this solution in JS?

根据条件,我正在像这样更改对象值。有没有更好的方法在没有重复部分的情况下进行波纹管检查?

if (this.selected.id === productId) {
            this.obj1 = {
              ...this.product,
              tags: this.selected.tags,
              imgs: product.imgs,
            }
          } else {
            this.obj1 = {
               ...this.product,
              tags: this.selected.tags,
              imgs: [],
            }
          }

如何才能更优化上述解决方案,例如和 ?具有内联条件的运算符? 或者像这样:

this.selected.id === productId ? imgs: product.imgs 否则不要添加此 属性 和值

是的,如果您使用内联 ternary operator 并且不重复其余代码,看起来会更好:

this.obj1 = {
          ...this.product,
          tags: this.selected.tags,
          imgs: this.selected.id === productId ? product.imgs: [],
        }

编辑: 如果您不想在不满足条件时执行任何操作:

this.obj1 = {
      ...this.product,
      tags: this.selected.tags
    }

if(this.selected.id === productId){
    this.obj1.imgs = product.imgs
}