2017-05-25 5 views
0

配列:以下の基準に基づいてアレイをトレースする方法は何ですか?

var numberArray:Array= new Array(34,53,2,3,34,26,26,85,3,4,98,2,12); 
  1. 出力パネルには、他のすべての項目が表示されますので、どのように私はそれをトレースします:どのように私は10より低い値を持つ数字をトレースん"34,2,34,26,3,98,12"

  2. アレイの偶数をトレースするにはどうすればよいですか?基準と一般教育の

+0

あなたはこれまでに何を試しましたか?あなたの#1ポイントを明らかにすることができますか(元の配列に関連して数字のセットが持つ意味は何ですか?) – BadFeelingAboutThis

+0

私はやってみた(numberArray [0、2、4、6、8、10、12]);それは私にエラーをもたらしました: ReferenceError:エラー#1069:プロパティ12がNumberに見つかりませんでした。デフォルト値はありません。 0、2、4、6、8、10、12、14のトレースを試したところ、 );それは配列の最初の要素(34)を正しくトレースしましたが、配列内に書いた配列番号の代わりに、 – Valtidude

+0

#1は少し書いていませんでした。私は "アレイの他のすべての要素をどのようにトレースすることができますか?" – Valtidude

答えて

3

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/Vector.html#map()

// You can init Arrays with [] operator. 
var numberArray:Array = [34,53,2,3,34,26,26,85,3,4,98,2,12]; 

trace(filter(numberArray, evenIndices)); 
trace(filter(numberArray, belowTen)); 
trace(filter(numberArray, evenValues)); 

// In AS3 you can pass method references as function arguments. 
// That allows to compose a filtering method, just like Vector.map(...) 

// This method will filter the original array 
// by the given criteria and return the filtered result. 
// Criteria method must accept 2 arguments: element index and value. 
function filter(source:Array, criteria:Function):Array 
{ 
    var result:Array = new Array; 

    for (var i:int = 0; i < source.length; i++) 
     if (criteria(i, source[i])) 
      result.push(source[i]); 

    return result; 
} 

// Returns true if index is an even number. 
function evenIndices(index:int, value:int):Boolean 
{ 
    return index % 2 == 0; 
} 

// Returns true if value is less than 10. 
function belowTen(index:int, value:int):Boolean 
{ 
    return value < 10; 
} 

// Returns true if value is an even number. 
function evenValues(index:int, value:int):Boolean 
{ 
    return value % 2 == 0; 
} 
-1

するvar numberArray:配列= [34、53、2、3、34、26、26、85]。

1.How出力パネルは、すべて、他のアイテムが表示されますので、私はそれをトレースします:「34,2,34,26,3,98,12」

getEventIndexiesOfArray(numberArray); 

2.Howをください私は10より小さい数をトレースします。

lenghtLessthanTen(numberArray); 

3.アレイの偶数をどのようにトレースしますか?アレイからのGETイベントindexies素子用

checkArrayHasEventLenght(numberArray); 

1 getEventIndexiesOfArray()メソッド。アレイな長さが10ないlessthanされていることを確認するため

private function getEventIndexiesOfArray(source:Array):void 
     { 
      var resultArr:Array = []; 
      for (var i:int = 0; i < source.length; i++) 
      { 
       if (i % 2 == 0) 
        resultArr.push(source[i]); 
      } 
      trace("Even Indexies Array : " + resultArr.toString()); 
     } 

2 lenghtLessthanTen()メソッド。

private function lenghtLessthanTen(source:Array):void 
      { 
       if (source.length < 10) 
        trace("Array containt lessthan Ten elements"); 
      } 

3 checkArrayHasEventLenght()メソッドは、配列containtが偶数な長さかどうかチェック。

private function checkArrayHasEventLenght(source:Array):void 
     { 
      if (source.length % 2 == 0) 
       trace("Array has even number of elenter code hereements"); 
     } 
関連する問題