Maison >interface Web >js tutoriel >Comment puis-je transmettre des éléments de tableau en tant qu'arguments de fonction en JavaScript ?

Comment puis-je transmettre des éléments de tableau en tant qu'arguments de fonction en JavaScript ?

DDD
DDDoriginal
2024-11-19 16:47:03883parcourir

How Can I Pass Array Elements as Function Arguments in JavaScript?

Puis-je transmettre les éléments d'un tableau en tant qu'arguments de fonction en JavaScript ?

En JavaScript, passer un nombre variable d'arguments à une fonction à partir d'un tableau est possible en utilisant les méthodes suivantes :

1. Syntaxe de propagation (ES6)

func(...arr);

La syntaxe de propagation (...) étend les éléments de arr en tant qu'arguments individuels à func.

2. Syntaxe de repos des paramètres de fonction (ES6)

function func(...args) {
  // `args` will be an array of all arguments passed to the function
}

La syntaxe de repos (...) collecte tous les arguments supplémentaires sous forme de tableau dans le paramètre args.

3. Méthode apply()

func.apply(context, arr);

La méthode apply() prend le premier argument comme valeur this pour la fonction et le deuxième argument comme tableau d'arguments.

Exemple

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

function func() {
  console.log(arguments.length); // Prints the number of arguments
  for (arg in arguments)
    console.log(arg); // Prints the arguments one by one
}

func(...arr); // Prints 3, then 'a', 'b', 'c'

Notes

  • Si vous devez définir explicitement cette valeur pour la fonction, utilisez apply() méthode.
  • L’objet arguments n’est pas un vrai tableau. Utilisez Array.from(arguments) pour créer un vrai tableau.
  • L'utilisation de la syntaxe spread est préférée aux autres méthodes en raison de sa brièveté et du manque de besoin de l'objet arguments.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn