
複数の変数宣言を、for文で一気にやる方法ってありますでしょうか?
たとえば、tfという変数を3つ作りたいとき、
var tf1:TextField = new TextField();
var tf2:TextField = new TextField();
var tf3:TextField = new TextField();
↑このように普通に書くのではなく
for(var i:int=0; i<3; i++){
var this["tf" + i]:TextField = new TextField();
}
↑このようにfor文で一気に書こうとしたのですがエラーになります。
複数の変数宣言を、for文で一気にやる方法ってありますでしょうか?
ご存知のかたいらっしゃいましたら、よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
同じ要素のデータを複数個作る時は、配列を使うと良いですよね。
恐らく下の文で配列を使おうとはしているのですが、配列(のメンバ)と変数の違いがよく理解されていないのが問題かと思います。
上では、tf1,tf2,tf3の、3つの変数を宣言していますが、
下の文では、thisという配列要素の"tf"+iというメンバに値をセットしつつ宣言をしようとしています。しかし配列のメンバは変数ではないため、何の宣言をしているのかわからなくなっています。
なお、このとき存在する変数は、thisという配列変数1つだけです。
何が言いたいかというと、配列は、配列自体が1つの変数であって、そのメンバーは変数宣言は必要有りません。
実際のところ、エラーが出るのは配列のメンバーを宣言するという行為にあるわけですが、そもそもthisという配列は本来もともと定義されているので使うのはよろしくないと思います。
下のコードをより的確にすると、
var tf:Array = new Array();//tf配列を宣言
for(var i:int = 0; i < 3; i++ ){
tf[i] = new TextField();//tf[0]、tf[1]、tf[2]にTextFieldオブジェクトを生成して代入
}
となるはずです。
普段はJavaScript書きなのでもしかしたらコードが違うかも知れませんがそこはご容赦下さい;根本は同じはずなので…
それでは成功を祈っています。
みなさま、すばやいご回答をたくさんありがとうございました。
おかげさまですぐに解決することができました。
本当にありがとうございました!
No.3
- 回答日時:
var max:uint=5;//5個生成
/*for (var i:uint=0;i<max;i++){
this["txt"+i]=new TextField();
addChild(this["txt"+i]);
this["txt"+i].x=100;
this["txt"+i].y=10+30*i;
this["txt"+i].text=String(i);
}*/
//以下のようにも、書けます。普通は、私は、こっちの方法を採ります。
for(var i:uint=0;i<max;i++){
var tf:TextField=new TextField();
addChild(tf);
tf.x=100;
tf.y=10+30*i;
tf.text=String(i);
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
potplayerについて質問です
-
スマホでサイトの画像を長押し→...
-
ゲオでカードを作るのは何歳か...
-
ActionScript 3.0についての質...
-
FLASHでゲームを作っていた人は...
-
この曲はなんでしょう?
-
laptop go2からの買い替え、lap...
-
スクリップト
-
私のコンピューター上のファイ...
-
arduino プログラムについて
-
chrome flash
-
FLASHの再生はできないのでしょ...
-
フラッシュゲームアーカイブ2
-
ウェブサイトで Flash が事実上...
-
Flashコンテンツを使ったWebサイト
-
Flash Playerのサポートが終了
-
Form内のselectを連動させるに...
-
Flashをブロックしないで
-
ダウンロードしたデジブックはa...
-
ad or script について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
配列の要素番号を取得するには?
-
VBでボタンを押すと画像をラン...
-
変な質問ですみません、n番目の...
-
重複しない乱数の生成
-
IDの自動採番について
-
VB.NET の配列の要素数
-
Vba 配列の中の特定文字列の位...
-
DataGridでCTRLキーを押さずに...
-
ランダム表示を重複させないよ...
-
複数の変数宣言を、for文で一気...
-
データ構造のテキスト保存につ...
-
arrayの中から一番近くて大きい...
-
VB6 複数行のテキストをリスト...
-
変数を利用してif文をまとめたい
-
重複しない乱数整数を発生させる。
-
Flash Lite1.1のクイズ制作での...
-
C言語のsizeof(サイズオブ)演算...
-
景品パネルの作り方
-
文章の改行数を取得する
-
エラー(型が一致しません。)...
おすすめ情報