Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Meluluskan Bilangan Pembolehubah Argumen kepada Fungsi JavaScript?

Bagaimanakah Saya Boleh Meluluskan Bilangan Pembolehubah Argumen kepada Fungsi JavaScript?

Barbara Streisand
Barbara Streisandasal
2024-11-16 01:44:03591semak imbas

How Can I Pass a Variable Number of Arguments to JavaScript Functions?

Meluluskan Bilangan Pembolehubah Argumen kepada Fungsi JavaScript

JavaScript menawarkan kefleksibelan dalam menghantar argumen kepada fungsi, termasuk keupayaan untuk menghantar nombor pembolehubah argumen daripada tatasusunan.

Arity Pembolehubah melalui argumen

Seperti Python, JavaScript mempunyai ciri khas objek argumen yang mewakili semua argumen yang dihantar ke fungsi. Objek ini mengandungi setiap hujah sebagai harta boleh diindeks. Contohnya:

function func() {
  console.log(arguments.length);
  for (arg in arguments) console.log(arg);
}

func('a', 'b', 'c', 'd'); // prints 4 and 'a', 'b', 'c', 'd'

Melalukan Tatasusunan sebagai Argumen

Walau bagaimanapun, menghantar tatasusunan terus ke fungsi sebagai argumen tidak akan mencapai hasil yang diingini. Sebaliknya, tatasusunan itu sendiri akan dianggap sebagai satu hujah. Untuk menghantar tatasusunan sebagai argumen individu, anda boleh menggunakan kaedah apply():

var arr = ['a', 'b', 'c'];

function func() {
  console.log(this); // 'test'
  console.log(arguments.length); // 3

  for (var i = 0; i < arguments.length; i++) {
    console.log(arguments[i]);
  }
}

func.apply('test', arr);

Ini akan mencetak 'test', 3, 'a', 'b' dan 'c'.

Spread Syntax (ES6 )

Sejak ES6, JavaScript memperkenalkan sintaks spread (...), yang menyediakan cara yang lebih ringkas untuk mencapai hasil yang sama:

func(...arr);

Ini akan mengembangkan elemen arr ke dalam argumen individu yang dihantar ke fungsi.

Parameter Dinamakan dengan Sintaks Spread (ES6 )

Anda juga boleh menggabungkan parameter bernama dengan sintaks penyebaran untuk menentukan bahawa beberapa argumen harus dianggap sebagai tatasusunan:

function func(first, second, ...theRest) {
  //...
}

Kesimpulan

JavaScript membenarkan untuk menghantar nombor pemboleh ubah argumen kepada fungsi melalui objek argumen atau, dalam ES6 dan kemudian, menggunakan sintaks spread. Fleksibiliti ini membolehkan pelbagai kes penggunaan, seperti mencipta fungsi generik yang boleh mengendalikan bilangan input sewenang-wenangnya.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Meluluskan Bilangan Pembolehubah Argumen kepada Fungsi JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn