関数について



0   名前: らいら : 2006/06/04(日) 19:01
JavaScriptを勉強し始めたのですが、関数というのがよくわかりません。
正直言ってさっぱりです。流れでなんとなく分かってるような気がしますが。
たとえば、
function myFunction(a,b){
return a*b;
}
というのはa*bをリターンする。なんとなくわかります。
そこで、疑問なんですが、
function myFunction(){

}
のように何も書かなかったら、そこでは何が起こっているのでしょうか。



1   名前: m035 ◆Wpzr1YKOiq : 2006/06/04(日) 19:01  [URL]  ID:Iscz08Ek
関数を呼び出すだけで何も起こらないのでは?
命令が一切無い以上マシンがすることは無いかと。

2   名前: Pid ◆byEkK9OALr : 2006/06/04(日) 19:01
厳密には,

・function myFunction () { ; }



・function myFunction () { return; }

すなわち

・function myFunction () { return undefined; }

と同義です。JavaScript の関数は必ず値を返します。

----
仕様に興味があれば下記参照。
http://www2u.biglobe.ne.jp/%7Eoz-07ams/prog/ecma262r3/13_Function_Definition.html#section-13.2.1
誤植があるので注意。また,関連して 8.9,12.9 もお読み下さい。

3   名前: らいら : 2006/06/04(日) 19:01
ご回答ありがとうございます。

Pidさん、具体的に教えていただいて助かります。ECMAの規格書むずかしいんですが、
がんばってみます。もうちょっといろいろやってみます。ありがとうございました。

一覧へ戻る