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

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     returnの使い方
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
永井勝則
Åê¹ÆNo.25657
投稿日時: 2006-5-20 22:17
職人
居住地: 白馬村
投稿: 796
使用環境:
Windows 7 :Flash CS4:
10.6.8 :Flash CS5.5
returnの使い方
たとえばif文の中で、
return;
を入れると、そこから先は処理されず、
if文を抜けることができるのですが、
この使い方は適切(合法的)なものなのでしょうか?

delete onEnterFrameの確認についてのスクリプトを拝借すると、

var target_mc:MovieClip;
function fadeout():Void {
	target_mc._alpha = 100;
	target_mc.onEnterFrame = function():Void  {
		trace(this.onEnterFrame);
		_alpha -= 10;
		if (_alpha<=0) {
			_alpha = 0;
			trace("returnまだ");
			return;
			trace("returnあと");
			delete this.onEnterFrame;
		}
	};
}
fadeout();

//実行結果
[type Function]
[type Function]
returnまだ
[type Function]
returnまだ
[type Function]

returnを入れるとif文はここで終わり、delete this.onEnterFrameは一生待っても実行されません。
returnはそもそも何かを返すものだという認識があるのですが、

undefinedを返すreturnを使うのは使い方として正しいのでしょうか?

あと、この場合、関数の型をVoidにしてもエラーは出ません。


----------------
永井勝則:
himco.jp :

nabe_1234
Åê¹ÆNo.25660
投稿日時: 2006-5-21 1:32
新米
居住地:
投稿: 21
使用環境:
Windows Vista Home Premium SP1,Flash CS3
Re: returnの使い方
> returnはそもそも何かを返すものだという認識があるのですが、
呼び出し元に制御を返す(戻す)とか・・・?

流石にこの場合の
delete this.onEnterFrameの行は無駄だと思いますが、
値を返さないこと自体はOKなんじゃないでしょうか。
野中文雄
Åê¹ÆNo.25664
投稿日時: 2006-5-21 7:07
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: returnの使い方
returnステートメントで返す式を指定しないこと、および処理中断の目的で用いることは、とくに問題ありません。

参考:「returnステートメント
引用:
永井勝則さんは書きました:
たとえばif文の中で、
return;
を入れると、そこから先は処理されず、
if文を抜けることができるのですが、
この使い方は適切(合法的)なものなのでしょうか?
...[中略]...
undefinedを返すreturnを使うのは使い方として正しいのでしょうか?

undefiedは、すべてのデータ型で受入れ可能です。たとえば、関数(function)の引数に型指定をして、引数を渡さなくても(引数はundefinedとして扱われます)エラーは発生しません。
引用:
あと、この場合、関数の型をVoidにしてもエラーは出ません。


----------------
 

永井勝則
Åê¹ÆNo.25665
投稿日時: 2006-5-21 11:41
職人
居住地: 白馬村
投稿: 796
使用環境:
Windows 7 :Flash CS4:
10.6.8 :Flash CS5.5
Re: returnの使い方
ありがとうございます。
今後returnのこの使い方を重宝しそうな気がします。


----------------
永井勝則:
himco.jp :

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

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