Retourner une chaine en tableau (as1)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 4 714 fois - Téléchargée 27 fois

Contenu du snippet

j'avais besoin de ce truc, et comme je chattais avec maf sur MSN, et que j'avais pas envie de bosser sur ma classe en préparation, je l'ai commenté pour les débutants.

Source / Exemple :


//--- Définition de la méthode toArray() comme méthode de la classe String.
//--- spacer = on définit un séparateur comme variable.
String.prototype.toArray = function(spacer) {
	//--- convertedString_ar = tableau temporaire pour contenir les données passées.
	var convertedString_ar = new Array();
	// --- initialChar = définition d'une variable pour l'indice de début de la méthode substr().
	var initialChar = 0;
	//--- Boucle chargée de passer les éléments de la chaine à convertir.
	//--- (Le fait de définir toArray comme méthode de la classe string
	//--- permet d'utiliser le mot clé this en référence à la chaine à passer.)
	for (var curentChar = 0; curentChar<this.length; curentChar++) {
		//--- Pour Array.push et String.substr, conf. l'aide de Flash.
		if (this.charAt(curentChar) == spacer) {
			//--- Lorsqu'on rencontre un séparateur, on ajoute la sous-chaine
			//--- extraite dans le tableau temporaire.
			convertedString_ar.push(this.substr(initialChar, curentChar-initialChar));
			initialChar = curentChar+1;
		}
		if (curentChar == this.length-1) {
			//--- Au dernier caractère, on extrait la dernière sous-chaine et on
			//--- retourne le tableau...
			convertedString_ar.push(this.substr(initialChar, curentChar));
			return convertedString_ar;
			//--- ... et on efface les traces de notre forfait.
			delete convertedString_ar;
		}
	}
};
//--- Utilisation :
sampleString_str = "red|blue|yellow";
sampleArray_ar = sampleString_str.toArray("|");
//--- Vérification :
for (var i = 0; i<sampleArray_ar.length; i++) {
	trace(sampleArray_ar[i]);
}
//---
stop();

Conclusion :


dsl maf, y'a pas intermediare ;-)

A voir également

Ajouter un commentaire

Commentaires

Messages postés
396
Date d'inscription
samedi 16 avril 2005
Statut
Membre
Dernière intervention
13 novembre 2009

Cela arrive au meilleurs d'entre nous !!!
Messages postés
1158
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
6 août 2010

Oui effectivement.. = ))
Messages postés
337
Date d'inscription
vendredi 15 octobre 2004
Statut
Membre
Dernière intervention
2 novembre 2010

ha si !
je part en sucette !
je me note [0/10]
Messages postés
337
Date d'inscription
vendredi 15 octobre 2004
Statut
Membre
Dernière intervention
2 novembre 2010

non, je vais voir dessuite
Messages postés
842
Date d'inscription
dimanche 24 novembre 2002
Statut
Membre
Dernière intervention
2 juillet 2007

Ah, tu me déçois :(

Tu ne connaît donc pas la méthode String.split ?

sampleString_str = "red|blue|yellow";
sampleArray_ar = sampleString_str.split("|");

Fait exactement la même chose !

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.