• ベストアンサー

関数リテラル

javascriptについて(恥ずかしい質問です) (function testDo(){ 何らかの処理 })(); で、即時関数(すぐに実行できますが) var testDo=function(){ 何らかの処理 };を即時関数にしたいです。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • think49
  • ベストアンサー率59% (285/482)
回答No.2

即実行するだけなら、次の文で関数呼び出しすればいいのではないでしょうか。 var testDo = function () {  何らかの処理 }; testDo(); これで駄目ならどういう目的で即時関数にするのかを明らかにしてください。 再利用可能なように testDo に代入しているのですから、普通に考えれば、これを即時関数化するメリットがありません。 P.S. http://okwave.jp/qa/q8614885.html の Strict Mode について。 Strict Mode はバグの要因になりうる機能を全て無効化します。 よって、より保守性の高いコードになります。 もし、全てのコードでStrict Mode を実行可能なコードならグローバルで 'use strict'; を宣言するだけで済みます。 # Re: 3466349さん

3466349
質問者

お礼

ご回答ありがとうございます。 以前、お世話になった質問の追記までしていただき 誠にありがとうございます。

その他の回答 (1)

回答No.1

>var testDo=function(){ >何らかの処理 >};を即時関数にしたいです。 この質問文の、どこを即時関数にしたいのですか? var testDo=function(){ 何らかの処理 }(); とすれば、「何らかの処理」の部分はすぐに実行(即時関数)されます。 この書き方で変数testDoを即時関数にする事はできません。(言語仕様です。)

3466349
質問者

お礼

ご回答ありがとうございます。

関連するQ&A

専門家に質問してみよう