"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo puedo pasar un número variable de argumentos a funciones de JavaScript?

¿Cómo puedo pasar un número variable de argumentos a funciones de JavaScript?

Publicado el 2024-11-18
Navegar:952

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

Pasar un número variable de argumentos a funciones de JavaScript

JavaScript ofrece flexibilidad para pasar argumentos a funciones, incluida la capacidad de enviar un número variable de argumentos desde una matriz.

Arity variable a través de argumentos

Al igual que Python, JavaScript tiene un objeto de argumentos especial que representa todos los argumentos pasados ​​a una función. Este objeto contiene cada argumento como una propiedad indexable. Por ejemplo:

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'

Pasar una matriz como argumentos

Sin embargo, pasar una matriz directamente a una función como argumentos no lo hará lograr el resultado deseado. En cambio, la matriz en sí se tratará como un argumento único. Para pasar una matriz como argumentos individuales, puede utilizar el método apply():

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

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

  for (var i = 0; i 

Esto imprimirá 'test', 3, 'a', 'b' y 'c'.

Sintaxis extendida (ES6)

Desde ES6, JavaScript introdujo la sintaxis extendida (...), que proporciona una forma más concisa de lograr lo mismo resultado:

func(...arr);

Esto expandirá los elementos de arr en argumentos individuales pasados ​​a la función.

Parámetros nombrados con sintaxis extendida (ES6 )

También puede combinar parámetros con nombre con la sintaxis extendida para especificar que algunos argumentos deben tratarse como una matriz:

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

Conclusión

JavaScript permite pasar un número variable de argumentos a funciones a través del objeto de argumentos o, en ES6 y posteriores, utilizando la sintaxis extendida. Esta flexibilidad permite una variedad de casos de uso, como la creación de funciones genéricas que pueden manejar una cantidad arbitraria de entradas.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3