Dalam JavaScript modern, ada dua operator penting yang juga harus Anda waspadai, karena semua akan menggunakannya
untuk kursus juga.
Dan itu untuk beristirahat dan menyebar.
Operator tahu secara spesifik operator spread adalah yang akan kami gunakan sedikit.
Katakanlah kita ingin menerapkan pola di mana ketika kita menambahkan hobi baru, kita tidak mengedit array
asli, tetapi kita membuat array baru dengan semua nilai lama.
Dan nilai baru itu sebenarnya adalah pola yang cukup umum yang disebut immutability, di mana kami tidak pernah menambahkan nilai
yang ada, tetapi di mana kami selalu menggantinya dengan salinan.
Ditambah perubahannya.
Dan itu semua polanya.
Saya akan menggunakan cukup banyak dalam kursus.
Gagasan di balik itu adalah bahwa kita menghindari kesalahan karena kita selalu memiliki pendekatan penyalinan yang jelas ini.
Kemudian tambahkan dan jangan edit objek yang ada yang dapat menyebabkan kode lebih terbaca.
Sekarang untuk menyalin array.
Katakanlah di sini saya membuat array Kopit.
Kami punya beberapa teknik yang memungkinkan.
Salah satunya adalah digunakan untuk mengiris operator.
Sekarang jika saya output array yang disalin di sana dan saya menjalankan node play catur, saya melihat olahraga dan memasak.
Jadi saya memang menyalinnya.
Slice cukup menyalin array.
Kita bisa memberikan argumen untuk mempersempit rentang elemen yang ingin kita salin tanpa argumen.
Kami menyalin seluruh array.
Sekarang, alih-alih mengiris, ada juga teknik yang berbeda.
Kita bisa membuat array baru dengan tanda kurung siku dan kita bisa menambahkan tatapan Hobbie.
Baik?
Sekarang apa yang terjadi jika kita menjalankan ini?
Apa yang akan kita lihat di konsol?
Nah, jika saya menekan enter, kita lihat.
Yah, sepertinya salinan pada pandangan pertama, tetapi sebenarnya ini adalah array tanpa array di dalamnya.
Jadi array luar hanya memiliki satu elemen.
Dan itulah array dalam.
Jadi ini bukan salinan.
Hanya saja array baru di mana elemen pertama adalah array lama.
Dan dengan itu, maksud saya objek yang sama persis.
Bukan salinannya.
Jadi kami baru saja membuat.
Array bersarang di sini.
Tentu saja itu bukan yang ingin kami lakukan di sini.
Dan di sini kita dapat menggunakan untuk menyebarkan operator, operator penyebaran adalah titik-titik gratis.
Kita dapat menambahkan di depan array atau objek.
Dan titik-titik gratis ini adalah operator hanya sebagai plus atau minus R.
Dan mereka melakukan satu hal.
Mereka mengambil array atau objek ini setelah operator dan mengeluarkan semua elemen atau properti.
Jadi semua elemen dari sebuah array atau semua properti dari suatu objek dan menaruhnya ke apapun yang ada di sekitar penyebaran
hutang.
Operator Dalam hal ini kami punya tanda kurung di sekitar spread.
Operator Dan karena itu semua elemen yang ditarik dari array yang ada ditambahkan ke array
baru.
Dan oleh karena itu, jika saya menjalankan musim gugur ini lagi, saya menangis dan saya menyimpannya sebelum menjalankannya lagi.
Sekarang kita melihat ini adalah output dari pendekatan lama, array bersarang.
Sekarang kami tidak punya array bersarang lagi.
Kami punya satu array.
Dan ini sekarang merupakan salinan dari yang lama, karena kami mengambil operator penyebaran ini untuk mengeluarkan elemen-elemen ini dan
menambahkannya satu per satu ke array yang baru.
Jadi ini adalah sesuatu yang akan Anda lihat.
Kami melakukan banyak hal untuk menyalin array atau objek yang ada.
Sterrett akan bekerja dengan cara yang sama.
Kita bisa meminta orang yang kita salin dengan menggunakan kurung kurawal.
Kemudian operator menyebar, titik-titik gratis dan kemudian orang tua.
Dan sekarang jika konsol mengunci orang yang disalin di sini.
Dan saya mengeksekusi musim gugur ini lagi.
Ini adalah orang Kopit kami di sini karena saya mengeluarkan semua elemen ini dari objek itu dan saya menambahkannya
ke objek baru.
Jadi ini berfungsi untuk objek dan array.
Dan itu adalah Syntex.
Saya akan menggunakan sedikit dalam kursus ini.
Sekarang apakah ini menyebar?
Operator, saya juga menyebutkan operator sisanya dan operator sisanya pada dasarnya sebaliknya.
Katakanlah saya memiliki fungsi yang saya akan beri nama dua array.
Ini fungsi panah.
Dan di sana saya berharap argumen adalah satu busur ke busur gratis.
Saya ingin mengembalikan array yang berisi argumen ini.
Gibson mengeluarkan tanda sama dengan di sini.
Jadi ketika saya mengembalikan array yang berisi argumen ini, saya bisa mengembalikan tanda kurung siku di sini, tentu saja.
Dan kemudian elemen pertama akan menjadi AAG.
Lalu saya punya ARC dua adalah elemen kedua dan arc bebas adalah elemen pertama.
Sekarang saya dapat konsol kunci ke array dan saya melewati satu, dua dan tiga sebagai argumen bebas untuk fungsi itu.
Jika sekarang saya menjalankan permainan catur, kita melihat sebuah array dengan satu, dua dan tiga D tiga elemen.
Jadi ini berfungsi, tetapi ini sama sekali tidak fleksibel.
Bagaimana jika kita ingin memberikan argumen?
Yah, kita bisa menyebutnya seperti itu.
JavaScript sebenarnya memungkinkan itu.
Tapi tentu saja, itu tidak ditambahkan karena kami hanya bekerja dengan argumen gratis di sini.
Kita bisa lakukan adalah kita bisa menggunakan operator yang disebut sisanya, sayang.
Titik titik titik.
Dan kemudian hanya bertanya.
Dan ini sebenarnya akan mengambil semua argumen.
Berapa banyak yang mungkin kita tentukan.
Itu tidak masalah.
Dan itu akan mengikat mereka dalam sebuah array untuk kita.
Jadi di sini ARG akan menjadi array dan saya bisa mengembalikannya sebenarnya.
Dan sekarang jika saya menjalankan ini dengan dua array mendapatkan argumen, Anda lihat sekarang saya punya array saya dengan empat argumen
di sini.
Jadi operator lainnya terlihat seperti operator yang menyebar.
Titik gratis.
Dan itu adalah tempat di mana Anda menggunakannya yang menentukan bagaimana Anda menyebutnya.
Apakah Anda menggunakannya untuk menarik elemen atau properti dari array atau objek?
Maka itu akan menjadi operator spread.
Apakah Anda menggunakannya untuk menggabungkan beberapa argumen menjadi array?
Dan Anda menggunakannya dalam daftar argumen fungsi.
Maka operator sisanya.
Ini operator yang sama oleh Syntex atau dari perspektif Syntex.
Nama berbeda tergantung pada tempat Anda menggunakannya.
Saya tidak akan menggunakannya.
Beberapa membutuhkan banyak hal dalam kursus ini, tetapi tetap menyenangkan untuk mengetahuinya.
Tetapi karena bisa mengeluarkan elemen atau properti, data, sesuatu yang harus Anda pahami karena ayah adalah Syntex, Anda
akan melihat saya menggunakan cukup banyak sepanjang kursus.