Non standard
Cette fonctionnalité n'est ni standard, ni en voie de standardisation. Ne l'utilisez pas pour des sites accessibles sur le Web : elle ne fonctionnera pas pour tout utilisateur. Il peut également y avoir d'importantes incompatibilités entre les implémentations et son comportement peut être modifié dans le futur.

Obsolète depuis Gecko 58 (Firefox 58 / Thunderbird 58 / SeaMonkey 2.55)
Cette fonctionnalité est obsolète. Bien qu'encore supportée par des navigateurs, son utilisation est découragée pour tout nouveau projet. Évitez de l'utiliser.

L'expression de fonction génératrice était une fonctionnalité spécifique à SpiderMonkey et est retirée à partir de Firefox 58. Pour la remplacer, on pourra utiliser l'expression function*.

Le mot-clé function peut être utilisé afin de définir une fonction génératrice au sein d'une expression. Pour que la fonction soit considérée comme génératrice, il faut que le corps de la fonction contiennent au moins une expression yield.

Syntaxe

function [nom]([param1[, param2[, ..., paramN]]]) {
   instructions
}

Paramètres

nom
Le nom de la fonction. Ce paramètre est optionnel, s'il n'est pas utilisé, la fonction sera anonyme. Le nom de la fonction est uniquement local pour le corps de la fonction.
paramN
Le nom d'un argument à passer à la fonction. Une fonction peut avoir jusqu'à 255 arguments.
instructions
Les instructions qui forment le corps de la fonction. Au moins l'une d'entre elle doit contenir une expression yield.

Description

Un aperçu de cet opérateur est disponible sur la page sur les itérateurs et les générateurs.

Compatibilité des navigateurs

Update compatibility data on GitHub
OrdinateurMobileServeur
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebview AndroidChrome pour AndroidEdge MobileFirefox pour AndroidOpera pour AndroidSafari pour iOSSamsung InternetNode.js
Support simple
ObsolèteNon-standard
Chrome Aucun support NonEdge Aucun support NonFirefox Aucun support 2 — 58IE Aucun support NonOpera Aucun support NonSafari Aucun support NonWebView Android Aucun support NonChrome Android Aucun support NonEdge Mobile Aucun support NonFirefox Android Aucun support 4 — 58Opera Android Aucun support NonSafari iOS Aucun support NonSamsung Internet Android Aucun support Nonnodejs Aucun support Non

Légende

Aucun support  
Aucun support
Fonctionnalité non-standard. Celle-ci peut être incorrectement supportée par les autres navigateurs.
Fonctionnalité non-standard. Celle-ci peut être incorrectement supportée par les autres navigateurs.
Obsolète. Les nouveaux sites web ne doivent pas utiliser cette fonctionnalité.
Obsolète. Les nouveaux sites web ne doivent pas utiliser cette fonctionnalité.

Voir aussi

Étiquettes et contributeurs liés au document

Contributeurs à cette page : SphinxKnight
Dernière mise à jour par : SphinxKnight,