La méthode subarray()
permet de renvoyer un nouvel objet TypedArray basé sur le même ArrayBuffer
et dont les éléments sont du même type que l'objet TypedArray courant. Le paramètre début
est à considérer au sens large et le paramètre end
est à considérer au sens strict. TypedArray est l'un des types de tableaux typés.
Syntaxe
typedarray.subarray([début[,fin]])
Paramètres
début
Facultatif- L'élément à partir duquel commencer le nouveau tableau typé. Cet élément initial sera inclus dans le nouveau tableau (sens large). Si la valeur n'est pas définie, tout le tableau sera cloné.
fin
Facultatif- L'élément auquel finir le nouveau tableau typé. Cet élément ne fera pas partie du nouveau tableau (sens strict). Si ce paramètre n'est pas utilisé, tous les éléments contenus à partir de
début
jusqu'à la fin du tableau courant seront inclus dans la nouvelle vue.
Valeur de retour
Un nouvel objet TypedArray
.
Description
L'intervalle défini par début
et fin
est redimensionné si besoin pour être un intervalle valide en regard du tableau courant. Si la longueur du nouveau tableau est négative, elle est ramenée à zéro. Si début
ou fin
a une valeur négative, on prendra en compte la position à partir de la fin du tableau et non à partir du début de celui-ci.
On notera que cette méthode permet de créer un nouvelle vue sur le tampon (buffer) existant, tous les changements apportés via le nouvel objet impacteront le tableau typé initial et vice versa.
Exemples
Utiliser la méthode subarray()
var buffer = new ArrayBuffer(8); var uint8 = new Uint8Array(buffer); uint8.set([1,2,3]); console.log(uint8); // Uint8Array [ 1, 2, 3, 0, 0, 0, 0, 0 ] var sub = uint8.subarray(0,4); console.log(sub); // Uint8Array [ 1, 2, 3, 0 ]
Spécifications
Spécification | État | Commentaires |
---|---|---|
Typed Array Specification | Obsolete | Remplacée par ECMAScript 6. |
ECMAScript 2015 (6th Edition, ECMA-262) La définition de 'TypedArray.prototype.subarray' dans cette spécification. |
Standard | Définition initiale au sein d'un standard ECMA. |
ECMAScript 2017 Draft (ECMA-262) La définition de 'TypedArray.prototype.subarray' dans cette spécification. |
Projet |
Compatibilité des navigateurs
Fonctionnalité | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Support simple | 7.0 | 4.0 (2) | 10 | 11.6 | 5.1 |
Fonctionnalité | Android | Chrome pour Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Support simple | 4.0 | (Oui) | 4.0 (2) | 10 | 11.6 | 4.2 |