タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

javascriptとclosureに関するsuVeneのブックマーク (3)

  • JavaScriptクロージャを完全理解!スコープチェインを知る(後編) - builder by ZDNet Japan

    前回はスコープチェインのお話に入るための予備知識として「変数オブジェクト」についてのお話をしました。それを踏まえて、今回はスコープチェインと、それによって実現されているクロージャについてしっかり学んでいきたいと思います。 スコープチェインとは 変数オブジェクトに関する説明はしっかりご理解頂けましたでしょうか?JavaScriptの変数は、全て変数オブジェクトのプロパティとして扱われている事、そして変数オブジェクトは状況に応じて違うものが使われる(グローバルスコープであればグローバルオブジェクト、ローカルスコープであれば目に見えない変数オブジェクト)というものでした。ローカルスコープに対応する変数オブジェクトは「アクティベーションオブジェクト」と呼ばれ、関数呼び出しが行われると自動的に作成されます。 しかし実際は、変数を参照するという事は、その場における変数オブジェクト「だけ」を探す訳ではあ

    JavaScriptクロージャを完全理解!スコープチェインを知る(後編) - builder by ZDNet Japan
  • (function(var){..............})(var) と function(var){............} の違い。つまり、クロージャ。 - それ図解で。・・・tohokuaikiのチラシの裏

    <script> (function(v){alert(v)}("aa")); hoge=function(v){alert(v)}; </script> ってやった場合、ローディングが終わったら alert("aa") が実行される。 ただし、 <script> (function(v){alert(v)}("aa")); hoge=function(v){alert(v)}; hoge("bb"); </script> ってやった場合、ローディングが終わったら alert("aa"); alert("bb") が実行される。 function全体を()でくくった場合は、それ自体を無名関数化して1回実行させる。 じゃあ、(function(){})は何を返すか? <script> hoge=(function(v){alert(v)})("aa"); alert(hoge); </scr

    (function(var){..............})(var) と function(var){............} の違い。つまり、クロージャ。 - それ図解で。・・・tohokuaikiのチラシの裏
  • 指向性メモ クロージャとOOPとJavaScriptの謎仕様

    ページ情報 制作日 2005-07-24T03:14:49+09:00 最終更新日 2005-10-28T11:35:21+09:00 ページ内目次 Navigation Comments Trackbacks Post a comment JavaScriptはクロージャでガリガリ書いていく言語だという説もあるが、OOP原理主義としてはプロトタイプベースでもいいからOOPで書きたいのである。というか、クロージャは中途半端で気持ち悪い。 さて、事の発端は『JavaScript とクロージャ』という記事である。この記事によると、なにやらイベントにクロージャを渡すと幸せになれるという事らしい。ふむふむ、たしかにシンプルでいい感じである。 ……が、しかしだ。オブジェクト指向なアレに対して、クロージャには決定的な弱点が有るはずなのだ。そう、メソッド(クロージャ)間での(メンバ)変数の共有である。

    suVene
    suVene 2006/02/13
    変数スコープの仕様がややこしい。
  • 1