0

文字列 a - b - c があり、配列を作成したいと思います。

A [] >> B [] >> C []

var f:Array = "a-b-d".split('-');
var tree:Array = new Array;
for (var i:Number=0; i < f.length ;  i++)
{
   var o:Object = new Object
  o.name = f[i];
  o.path = f.slice(0,i);
 o.isDirectory = (i == f.length)? false :true ;
}

私はこれが欲しい

var x:Array = new Array(new Array(new Array()));

これは正しい方法ですか?または、どうすればよいですか?

4

1 に答える 1

0

はい、配列内に多次元配列を作成できます。データモデルを考えると、代わりに「オブジェクト」を作成し、これらのオブジェクトのコレクションとして配列を使用すると便利な場合があります。また、その構造内の項目を検索、取得、更新、および削除するためのヘルパー メソッドを作成すると便利な場合があります。

問題は、文字列がどのように構成されているかです。深さは3段くらいですか?これはテストされていないコードであり、文字列構造が設定されたレベルの深さだけであるという想定に基づいています。

コードを使用する方法は次のとおりです。

var f:Array = "a-b-c".split('-');

// create first dimension of arrays (tree)
var tree:Array = new Array();
var secondTree:Array = new Array();
var thirdTree:Array = new Array();

secondTree.push(thirdTree);
tree.push(secondTree);

// create second dimension of arrays (tree)
for (var i:int=0; i < f.length;  i++)
{
   var o:Object = new Object
   o.name = f[i];
   o.path = f.slice(0,i);
   o.isDirectory = (i == f.length)? false : true;

   if(i%3 == 0) {
     thirdTree.push(o);
   } else if(i%2 == 0) {
     secondTree.push(o);
   } else {
     tree.push(o);
   }
}
于 2013-07-20T13:10:57.940 に答える