mozilla
Vos résultats de recherche

    String.prototype.split()

    L'objet ArrayBuffer est utilisé afin de représenter un tampon (buffer) de données binaires de longueur fixe de façon générique. La manipulation du contenu d'un ArrayBuffer se fait de façon indirecte en créant un tableau typé ou un objet DataView qui permet de représenter le tampon dans un format donné qui permet de lire/écrire des contenus dans le tampon de mémoire.

    Syntaxe

    new ArrayBuffer(longueur)
    

    Paramètres

    longueur
    La taille, exprimée en octets, du tableau représentant le tampon.

    Valeur de retour

    Un nouvel objet ArrayBuffer de la taille donnée. Ses éléments sont initialisés à 0.

    Description

    Le constructeur ArrayBuffer crée une nouvelle instance d'ArrayBuffer dont la longueur est celle donnée lors de la construction.

    Obtenir un tampon mémoire depuis des données existantes

    Propriétés

    ArrayBuffer.length
    La longueur du constructeur ArrayBuffer. Elle vaut 1.
    ArrayBuffer.prototype
    Cette propriété permet d'ajouter des propriétés à tous les objets ArrayBuffer.

    Méthodes

    ArrayBuffer.isView(arg)
    Cette méthode renvoie true si arg est une des vues sur l'ArrayBuffer telle qu'un tableau typé ou un objet DataView, sinon elle renvoie false.
    ArrayBuffer.transfer(ancienTampon [, nouvelleLongueur])
    Cette méthode renvoie un nouvel objet ArrayBuffer dont le contenu est transféré depuis les données de ancienTampon et qui est ensuite tronqué ou rallongé avec des zéros pour que la taille du nouveau tampon soit nouvelleLongueur.

    Les instances d'ArrayBuffer

    Toutes les instances d'ArrayBuffer héritent de ArrayBuffer.prototype.

    Propriétés

    ArrayBuffer.prototype.constructor
    Définit la fonction qui crée le prototype d'un objet. La valeur initiale correspond au constructeur natif ArrayBuffer.
    ArrayBuffer.prototype.byteLength Lecture seule
    La taille du tableau en octets. Cette propriété est déterminée lors de la construction du tableau et ne peut pas être changée. Propriété en lecture seule.

    Méthodes

    ArrayBuffer.prototype.slice()
    Renvoie un nouvel ArrayBuffer dont le contenu est une copie des octets contenus dans l'objet ArrayBuffer depuis begin (compris), jusqu'à end (non-compris). Si begin ou end est négatif, cela fait référence à l'indice à partir de la fin du tableau et non à l'indice à partir du début du tableau.

    Exemple

    Dans cet exemple, on crée un tampon sur 8 octets avec une vue Int32Array qui fait référence à ce tampon :

    var tampon = new ArrayBuffer(8);
    var vue    = new Int32Array(buffer);

    Spécifications

    La méthode split() permet de diviser une chaîne de caractères à partir d'un séparateur pour fournir un tableau de sous-chaînes.

    Syntaxe

    str.split([séparateur][, qtéMax])

    Paramètres

    séparateur
    Paramètre optionnel qui définit le ou les caractères à utiliser pour scinder la chaîne. Le séparateur est considéré comme une chaîne ou une expression rationnelle. Si séparateur est omis, le tableau retourné contiendra un unique élément contenant la chaîne entière. Si le séparateur est une chaîne vide, la chaîne str sera convertie en un tableau de caractères.
    qtéMax
    Paramètre optionnel. Un entier définissant la limite sur le nombre de sous-chaînes à retourner. La méthode split scindera toujours la chaîne à partir du séparateur, mais le tableau retourné contiendra au plus qtéMax sous-chaînes.

    Description

    La méthode split() retourne un nouveau tableau.

    Lorsqu'il est trouvé, le séparateur est supprimé de la chaîne et les sous-chaînes sont retournées dans un tableau. Si le séparateur est omis, le tableau contiendra un élément correspondant à la chaîne courante. Si le séparateur est une chaîne vide, la chaîne courante est convertie en un tableau composé des caractères de la chaîne.

    Si le séparateur est une expression rationnelle qui contient des parenthèses groupantes, à chaque fois que le séparateur correspond, les résultats (incluant tout résultat indéfini) des groupes iront dans le tableau retourné. Cependant, tous les navigateurs ne supportent pas cette possibilité.

    Note : Quand la chaîne est vide, split() retourne un tableau contenant une chaîne vide, plutôt qu'un tableau vide.

    Exemples

    Utiliser split()

    L'exemple suivant définit une fonction qui divise une chaîne en un tableau de chaînes selon un délimiteur spécifié. Après la coupe de la chaîne, la fonction affiche des messages indiquant la chaîne initiale (avant la coupe), le délimiteur utilisé, le nombre d'éléments dans le tableau, et les éléments du tableau retourné.

    function splitString(stringToSplit, separator) {
      var arrayOfStrings = stringToSplit.split(separator);
    
      console.log('La chaine d\'origine est : "' + stringToSplit + '"');
      console.log('Le délimiteur est : "' + separator + '"');
      console.log("Le tableau comporte " + arrayOfStrings.length + " elements : ");
    
      for (var i=0; i < arrayOfStrings.length; i++)
        print(arrayOfStrings[i] + " / ");
    }
    
    var tempestString = "Oh brave new world that has such people in it.";
    var monthString = "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec";
    
    var espace = " ";
    var virgule = ",";
    
    splitString(tempestString, espace);
    splitString(tempestString);
    splitString(monthString, virgule);
    

    Cet exemple produira la sortie suivante :

    La chaine d'origine est : "Oh brave new world that has such people in it."
    Le délimiteur est : " "
    Le tableau comporte 10 elements : Oh / brave / new / world / that / has / such / people / in / it. /
    
    La chaine d'origine est : "Oh brave new world that has such people in it."
    Le délimiteur est : "undefined"
    Le tableau comporte 1 elements : Oh brave new world that has such people in it. /
    
    La chaine d'origine est : "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec"
    Le délimiteur est : ","
    Le tableau comporte 12 elements : Jan / Feb / Mar / Apr / May / Jun / Jul / Aug / Sep / Oct / Nov / Dec /
    

    Supprimer les espaces d'une chaîne

    Dans l'exemple suivant, split recherche zéro ou plusieurs espaces suivis d'un point-virgule, lui-même suivi par zéro ou plus espaces. Lorsque ce « motif » est trouvé, cela supprime celui-ci de la chaîne. nameList est le tableau retourné du résultat de split.

    var names = "Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand ";
    
    console.log(names);
    
    var re = /\s*;\s*/;
    var nameList = names.split(re);
    
    console.log(nameList);
    

    Ceci affichera deux lignes dans la console ; la première ligne correspondant à la chaîne d'origine, et la seconde au tableau de résultats.

    Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand
    Harry Trump,Fred Barney,Helen Rigby,Bill Abel,Chris Hand
    

    Retourner un nombre limité de sous-chaînes

    Dans l'exemple suivant, split() recherche zéro ou plusieurs espaces dans une chaîne et retourne les 3 premières sous-chaînes qui correspondent.

    var myString = "Hello World. How are you doing?";
    var splits = myString.split(" ", 3);
    
    console.log(splits);
    

    Ce script affichera :

    Hello,World.,How
    

    Parenthèses capturantes

    Si le paramètre séparateur est une expression rationnelle qui contient des parenthèses de capture, les résultats seront retournés dans le tableau.

    var myString = "Hello 1 word. Sentence number 2.";
    var splits = myString.split(/(\d)/); /* Ce motif correspond à un chiffre et est équivalent à [0-9] */
    
    console.log(splits);
    

    Ce script affichera :

    Hello ,1, word. Sentence number ,2,.
    

    Inverser une chaîne en utilisant split()

    var str = 'asdfghjkl';
    var strReverse = str.split('').reverse().join(''); // 'lkjhgfdsa'
    // split renvoie un tableau sur lequel on peut appliquer reverse
    // enfin on utilise join pour assembler le tout.

    Note : Si on souhaite tester si la chaîne courante est un palindrome, on pourra utiliser l'opérateur ===.

    Spécifications

    Spécification Statut Commentaires
    Spécification sur les tableaux typés Obsolète Remplacée par ECMAScript 6.
    Spécification Statut Commentaires
    Troisième édition d'ECMAScript. Standard Définition initiale. Implémentée avec JavaScript 1.1.
    ECMAScript 5.1 (ECMA-262)
    La définition de 'String.prototype.split' dans cette spécification.
    Standard  
    ECMAScript 6 (ECMA-262)
    La définition de 'String.prototype.split' dans cette spécification.
    En cours de validation comme recommandation  

    Compatibilité des navigateurs

    Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari
    Support simple (Oui) (Oui) (Oui) (Oui) (Oui)
    Fonctionnalité Android Chrome pour Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
    Support simple (Oui) (Oui) (Oui) (Oui) (Oui) (Oui)

    Voir aussi

    ECMAScript 6 (ECMA-262)
    La définition de 'ArrayBuffer' dans cette spécification.
    En cours de validation comme recommandation Définition initiale au sein d'un standard ECMA.

    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

    Voir aussi

    Étiquettes et contributeurs liés au document

    Contributors to this page: riplay777, SphinxKnight, AlainRinder, teoli
    Dernière mise à jour par : SphinxKnight,
    Masquer la barre latérale