Javascript: tetapkan objek ke variabel [duplikat]

Sep 15 2020

Saya memiliki objek yang sudah ada dengan beberapa properti:

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

Jadi, saya ingin menetapkan filterproperti objek ini ke objek lain selama deklarasi variabel:

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

Karena itu saya ingin mendapatkan objek seperti itu:

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

Saya bisa melakukannya setelah spritedeklarasi variabel seperti ini:

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

Tetapi apakah mungkin untuk menetapkan properti objek lain selama deklarasi variabel?

Akan sangat mudah jika ada banyak-banyak props dalam satu objek dan JS akan memungkinkan untuk mengimplementasikan tugas tersebut selama deklarasi variabel untuk menghilangkan pemrosesan pos yang berlebihan.

Jawaban

4 Reyno Sep 15 2020 at 15:33

Anda dapat menggunakan operator penyebaran untuk "menyebarkan" nilai props di dalam variabel sprite.

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

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

console.log(sprite);