Javascript: nesneyi [yinelenen] değişkene ata

Sep 15 2020

Bazı özelliklere sahip mevcut bir nesnem var:

var props = {
  filters: {
    brightness: 0,
    opacity: 1,
  }
}

Dolayısıyla, filterdeğişken bildirimi sırasında bu nesnenin özelliklerini başka bir nesneye atamak istiyorum :

var sprite = {
  configs: {
    image: 'pic.png',
    // <- assign `props.filters` right here
  }
}

Sonuç olarak, böyle bir nesne almak istiyorum:

{
  configs: {
    image: 'pic.png',
    brightness: 0,
    opacity: 1,
  }
}

Bunu spritedeğişken tanımlamadan hemen sonra şöyle yapabilirim :

Object.assign(sprite.configs, props.filters);

Ancak değişken bildirimi sırasında başka bir nesnenin özelliklerini atamak mümkün müdür?

Tek bir nesnede çok sayıda sahne olması ve JS'nin, gereksiz son işlemeyi ortadan kaldırmak için değişken bildirimi sırasında bu tür atamanın uygulanmasına izin vermesi durumunda çok uygun olacaktır.

Yanıtlar

4 Reyno Sep 15 2020 at 15:33

Sprite değişkeninin içindeki props değerlerini "yaymak" için yayma operatörünü kullanabilirsiniz .

const props = {
  filters: {
    brightness: 0,
    opacity: 1,
  }
};

const sprite = {
  configs: {
    image: 'pic.png',
    ...props.filters,
  }
};

console.log(sprite);