AS3 : Nouvelles méthodes de la classe Array
Par DickRivers, mercredi 21 juin 2006 à 15:13 :: Flash :: #92 :: rss
C'est en regardant la doc AS3 que j'ai découvert de nouvelles méthodes sur la classe Array, les voici :
Array.forEach();
Array.every();
Array.map();
Array.filter();
Array.some();
Array.indexOf()
Array.lastIndexOf()
Dédicace à Jérôme
Array.forEach();
Array.every();
Array.map();
Array.filter();
Array.some();
Array.indexOf()
Array.lastIndexOf()
Dédicace à Jérôme

Voici un petit détail de chaque méthode, qui vont vous faciliter la vie en AS3 :
Array.forEach() : Execute une fonction sur chaque élément
Array.every() : Execute une fonction sur chaque élément tant que la fonction renvoie true pour l'élément parcouru
Array.forEach() : Execute une fonction sur chaque élément
var monArray:Array = [12, 58, "bob"];
monArray.forEach (navigate);
private function navigate(element:*, index:int, arr:Array):void {
trace( element + " :: " + index + " :: " + arr );
}
Sortie :
12 :: 0 :: 12,58,bob 58 :: 1 :: 12,58,bob bob :: 2 :: 12,58,bob
Array.every() : Execute une fonction sur chaque élément tant que la fonction renvoie true pour l'élément parcouru
var monArray:Array = [12, 58, "bob"];
var isAStringArray:Boolean = monArray.every (navigate);
trace ( isAStringArray );
private function navigate(element:*, index:int, arr:Array):Boolean {
return ( element is String );
}
Sortie :
falseArray.map() : Construit un nouveau tableau à partir du retour de la fonction
var monArray:Array = ["steven groove", "ritchie funk", "billy jazzy"];
var newArray:Array = monArray.map (navigate);
trace ( newArray );
private function navigate(element:*, index:int, arr:Array):String {
return String (element).charAt(0).toUpperCase() + String (element).substr(1).toLowerCase();
}
Sortie :
Steven groove,Ritchie funk,Billy jazzyArray.filter() :Construit un nouveau tableau incluant chaque élement validé par la condition
var monArray:Array = [{name : "bob", age : 17},
{name : "ritchie", age : 25},
{name : "bobby", age : 14} ];
var over18:Array = monArray.filter (navigate);
over18.forEach ( showelements );
private function navigate(element:*, index:int, arr:Array):Boolean {
return element.age >= 18;
}
private function showelements(element:*, index:int, arr:Array):void {
trace( element.name + " :: " + element.age );
}
Sortie :
ritchie :: 25Array.some() : Execute une fonction sur chaque élément jusqu'à ce que la fonction renvoie true
var monArray:Array = [{name : "bob", sex : "M"},
{name : "ana", sex : "F"},
{name : "bobby", sex : "M"} ];
var anyWomen:Boolean = monArray.some (navigate);
trace( anyWomen );
private function navigate(element:*, index:int, arr:Array):Boolean {
return element.sex == "F";
}
Sortie :
trueArray.indexOf() : Retourne la position de l'élement recherché dans le tableau
var monArray:Array = ["bob", "ana", "bobby", "ana" ];
var result:int = monArray.indexOf ("ana");
var result2:int = monArray.lastIndexOf ("ana");
trace( result + " :: " + result2 );
Sortie :
1 :: 3

Commentaires
1. Le mercredi 21 juin 2006 à 16:14, par Jérôme
2. Le mercredi 21 juin 2006 à 16:33, par glorb
3. Le mardi 26 août 2008 à 12:25, par marc
4. Le vendredi 24 avril 2009 à 10:19, par matz
5. Le lundi 3 août 2009 à 13:10, par dev21
6. Le mardi 16 mars 2010 à 11:51, par maloz
7. Le mercredi 14 juillet 2010 à 18:59, par YopSolo
Ajouter un commentaire