Flash / Flex / ActionScript/Array/join

Материал из Web эксперт
Перейти к: навигация, поиск

Converting an Array to a String: Use the join( ) method.

   <source lang="java">

package{

 import flash.display.Sprite;
 
 public class Main extends Sprite{
   public function Main(){
       var letters:Array = ["a", "b", "c"];
       trace(letters.join("|"));   // Displays: a|b|c
   }
 }

}

       </source>
   
  


Converting Arrays to Lists

   <source lang="java">

package{

 import flash.display.Sprite;
 
 public class Main extends Sprite{
   public function Main(){
       var aEmployees:Array = ["A", "P", "C", "H"];
       var sEmployees:String = aEmployees.join(",");
       trace(sEmployees);
   }
 }

} //A,P,C,H

       </source>
   
  


Join object array

   <source lang="java">

package{

 import flash.display.Sprite;
 
 public class Main extends Sprite{
   public function Main(){
       
       var bookshelf:Array = new Array(3);
       bookshelf[0] = new Book("A","a",1999);
       bookshelf[1] = new Book("B","b",2000);
       bookshelf[2] = new Book("C","c",2001);
       trace(bookshelf.join("\n"));
       bookshelf.sort();
   }
 }

}

class Book {
       public var title:String;
       public var author:String;
       public var year:int;
       public function Book (title:String, author:String, year:int) {
           this.title = title;
           this.author = author;
           this.year = year;
       }
       public function toString():String {
           return """ + title + "", " + author + " (" + year + ")";
       }
   }
       </source>
   
  


Use an array in a situation in which a string is required, Flash automatically calls the toString( ) method

   <source lang="java">

package{

 import flash.display.Sprite;
 
 public class Main extends Sprite{
   public function Main(){
       var letters:Array = ["a", "b", "c"];
       trace(letters);  // Displays: a,b,c
   }
 }

}

       </source>
   
  


With join() you can use any delimiter you want

   <source lang="java">

package{

 import flash.display.Sprite;
 
 public class Main extends Sprite{
   public function Main(){
       var aEmployees:Array = ["A", "P", "C", "H"];
       var sEmployees:String = aEmployees.join(";");
       trace(sEmployees);
   }
 }

} //A;P;C;H

       </source>
   
  


Without a delimiter, Flash uses a comma by default

   <source lang="java">

package{

 import flash.display.Sprite;
 
 public class Main extends Sprite{
   public function Main(){
       var letters:Array = ["a", "b", "c"];
       trace(letters.join());   // Displays: a,b,c
   }
 }

}

       </source>