Rumah  >  Soal Jawab  >  teks badan

Masalah dengan pengendali penyebaran es6...

Saya boleh memahami watak pengembangan untuk menyalin tatasusunan, tetapi saya tidak faham yang digunakan untuk menghantar parameter kepada fungsi

Seperti di atas, mengapakah parameter fungsi boleh menerima beberapa parameter selepas menambah operator pengembangan?

fn(...arg)要怎么理解
高洛峰高洛峰2662 hari yang lalu921

membalas semua(8)saya akan balas

  • 阿神

    阿神2017-07-05 10:43:47

    Apabila mentakrifkan fungsi, ini harus dipanggil parameter yang tinggal.

    Jika parameter terakhir yang dinamakan fungsi itu diawali dengan..., maka apabila fungsi dipanggil, parameter formal akan menjadi tatasusunan, dan elemen dalam tatasusunan akan menjadi nilai parameter sebenar tambahan yang diluluskan kepada fungsi.

    Lihat MDN untuk penjelasan terperinci:
    https://developer.mozilla.org...

    balas
    0
  • 迷茫

    迷茫2017-07-05 10:43:47

    Boleh tengok chestnut ni dulu

    The...arg di sini sebenarnya mendapat nilai hujah, jadi kaedah anda boleh ditulis semula seperti ini

    function fn(){
        var arg = [...arguments];
        console.log(...arg);
    }

    balas
    0
  • PHP中文网

    PHP中文网2017-07-05 10:43:47

    Tukar hujah kepada tatasusunan

    balas
    0
  • 天蓬老师

    天蓬老师2017-07-05 10:43:47

    Penjelasan rasmi:

    Ikat parameter mengekor pada tatasusunan.

    Digunakan dalam parameter fungsi, ia menukar parameter bermula di sini kepada tatasusunan.

    fn(...args)//所有参数变为数组
    fn(a, ...args)//从第二个参数变为数组

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-07-05 10:43:47

    Parameter formal fungsi akan disimpan dalam tatasusunan kelas argumen Operator... boleh menukar tatasusunan kelas kepada tatasusunan

    balas
    0
  • 给我你的怀抱

    给我你的怀抱2017-07-05 10:43:47

    Anda perlu bermula dengan ECMAScript 6

    balas
    0
  • 淡淡烟草味

    淡淡烟草味2017-07-05 10:43:47

    Anda boleh faham bahawa
    fn(...arg) meletakkan semua parameter parameter dalam tatasusunan arg Tidak kira berapa banyak parameter yang anda lalui apabila anda memanggil fungsi ini, ia boleh diperolehi oleh arg.

    balas
    0
  • 巴扎黑

    巴扎黑2017-07-05 10:43:47

    Parameter fungsi boleh diperolehi melalui argumen objek seperti tatasusunan Sebarang berbilang parameter yang anda masukkan pada dasarnya wujud sebagai objek seperti tatasusunan di dalam fungsi, jadi menambah operator hamparan hanya menukar objek seperti tatasusunan ini menjadi jujukan parameter.

    balas
    0
  • Batalbalas