トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   迷える子羊の部屋【初心者専用】
     for文とボタンアクション
投稿するにはまず登録を

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
youich
Åê¹ÆNo.11322
投稿日時: 2004-10-6 10:44
職人
居住地: kobe
投稿: 349
使用環境:
Re: これは、僕も陥った
引用:


多分 gigitさんの中では、

// ↓この 変数『 i 』
for( i=0; i<31; i++ ){
}



// ↓この 変数『 i 』
this['mc0'....'mc31'].bt.onPress = function(){
   trace(i);
};

が、同じものだと思ってませんか?(僕も初めは思ってました。)
でも、実際は二つの変数『 i 』は、全く別もので

あれ、この二つの変数『 i 』は同じものですよ?
Flashの場合、変数のスコープは簡単に言ってしまうと、
ローカル(activationObjectも含む)
ムービークリップ(タイムラインも含む)、
グローバルですね、
そして関数は定義された場所のスコープを持ちます。


引用:


this['mc0'....'mc31'].bt.onPress = function(){
   trace(i);
};

↑こちらの変数『i』は、
こちらも、onPress = function()←関数宣言中で
『i』が出てきてるにも関わらず、var宣言していないので、
ローカル変数にはならず、

  // mc0だった場合は・・・
  this['mc0'].bt.onPress = function(){
     trace(this.mc0.bt.i);
  };

  // mc1だった場合は、、
  this['mc1'].bt.onPress = function(){
     trace(this.mc1.bt.i);
  };

と書いてるのと同じ意味になります。


だからここ↑は、、、

  // mc0だった場合は・・・
  this['mc0'].bt.onPress = function(){
     trace(this._parent._parent.i);
  };

  // mc1だった場合は、、
  this['mc1'].bt.onPress = function(){
     trace(this._parent._parent.i);
  };

と書いてるのと同じ意味ですね。


----------------
- yo

フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
   for文とボタンアクション gigit 2004-10-3 19:18
     Re: for文とボタンアクション Fumio 2004-10-3 20:39
     これは、僕も陥った salvox 2004-10-6 4:14
       Re: デフォルト参照とthis参照 Fumio 2004-10-6 9:58
     » Re: これは、僕も陥った youich 2004-10-6 10:44
         ありがとうございました。 gigit 2004-10-6 21:30
         m(_ _)m 勉強不足でした。 salvox 2004-10-12 4:16

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops