JS: Funciones
Teoría: Operador Spread (desempaquetar argumentos)
El operador spread en las llamadas de funciones es sintácticamente idéntico al operador rest en las definiciones, pero realiza la acción opuesta. Veamos un ejemplo con la función sum():
Llamamos a sum() aplicando el operador spread a un array de argumentos:
El operador spread descompone el array en argumentos. La cantidad de argumentos obtenidos con el operador spread es igual a la cantidad de elementos del array. En esencia, el código anterior se convierte en la siguiente llamada:
Al igual que en el caso de las definiciones de funciones, el operador spread se puede usar junto con argumentos posicionales:
A diferencia del operador rest en las definiciones de funciones, el operador spread no tiene que ser el último, puede estar en cualquier posición:
Además, puede haber cualquier cantidad de operadores spread y en cualquier orden:
En resumen, ambos operadores rest y spread se representan con el símbolo .... Para no confundirlos al trabajar con funciones, debes seguir los siguientes principios:
- El operador rest se utiliza al crear funciones. Permite recopilar los parámetros restantes de la función en un array.
- El operador spread se utiliza al llamar a funciones. Extrae los elementos del array y los utiliza para llenar los parámetros de la función al llamarla.
Completado
0 / 16