Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
TypedArray.prototype.map()
Baseline Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis septembre 2016.
La méthodemap() crée un nouveau tableau typé dont les éléments sont les images des éléments du tableau typé courant par une fonction donnée. Cette méthode utilise le même algorithme queArray.prototype.map().TypedArray est utilisé ici de façon générique pour représenterl'un des types de tableaux typés possibles.
Dans cet article
Exemple interactif
const uint8 = new Uint8Array([25, 36, 49]);const roots = uint8.map(Math.sqrt);console.log(roots);// Expected output: Uint8Array [5, 6, 7]Syntaxe
typedarray.map(callback[, thisArg])Paramètres
callbackLa fonction qui renvoie l'élément à placer dans le nouveau tableau typé. Cette fonction utilise trois arguments :
valeurCouranteLa valeur de l'élément du tableau typé courant, celui traité par la fonction.
indiceL'indice de l'élément du tableau typé en cours de traitement.
tableauTypéLe tableau typé sur lequel
map()a été appelée.
thisArgParamètre optionnel. La valeur à utiliser pour
thislors de l'appel àcallback.
Valeur de retour
Un nouveau tableau typé.
Description
La méthodemap() appelle la fonctioncallback() passée en argument une fois pour chaque élément du tableau typé pour construire un nouveau tableau à partir des résultats de la fonction. Les appels à callback sont effectués dans l'ordre du tableau typé.callback() n'est appelée que pour les éléments du tableaux qui ont une valeur, elle n'est pas appelée pour les éléments qui sont indéfinis ou qui ont été supprimés.
callback() est appelée avec trois arguments : la valeur de l'élément, l'indice de cet élément et enfin le tableau typé courant.
Si un paramètrethisArg est fourni pourmap(), il sera passé àcallback pour les différents appels et servira de valeurthis. Par défaut, la valeurundefined sera passée à la fonction pour la valeurthis. Par ailleurs, la valeur dethis accessible depuis la fonctioncallback est déterminée selonles règles usuelles déterminant la valeurthis au sein d'une fonction.
map() ne modifie pas le tableau typé sur lequel elle a été appelée (indirectement, c'est la fonctioncallback qui pourra éventuellement modifier le tableau).
La liste des éléments parcourus parmap() est définie avant la première invocation de la fonctioncallback. Les éléments qui sont ajoutés au tableau typé après le début de l'appel demap() (grâce à la fonctioncallback par exemple) ne seront pas visités. Si des éléments existants du tableau typé ont modifiés ou supprimés, la valeur fournie à la fonctioncallback sera leur valeur au moment oùmap() les visite - les éléments supprimés ne seront pas traités par la fonction.
Exemples
>Obtenir un tableau typé des racines carrées des éléments d'un premier tableau typé
Dans l'exemple suivant, on crée un nouveau tableau typé dont les éléments seront les racines carrées respectives des éléments d'un tableau typé existant.
var nombres = new Uint8Array([1, 4, 9]);var racines = nombres.map(Math.sqrt);// racines vaut désormais Uint8Array [1, 2, 3],// nombres vaut toujours Uint8Array [1, 4, 9]Utilisermap() avec une fonction qui prend un argument
Ici, on illustre comment une fonction utilisant un argument peut être utilisée avecmap(). Cet argument recevra automatiquement la valeur de chaque élément du tableau typé au fur et à mesure du parcours.
var nombres = new Uint8Array([1, 4, 9]);var doubles = nombres.map(function (num) { return num * 2;});// doubles vaut désormais Uint8Array [2, 8, 18]// nombres vaut toujours Uint8Array [1, 4, 9]Spécifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-%typedarray%.prototype.map> |