タグ

JavaScriptとclosureに関するnabetamaのブックマーク (3)

  • クロージャ再考 - Qiita

    はじめに 中級以上のJavaScriptプログラマを目指す上で、避けては通れない壁の一つは クロージャ(Closure) だと思います。「関数の外側で定義された変数を持つ関数の実行時オブジェクトです」とさらっと説明されることが多いですが、シンプルなだけに理解したつもりになって実は使いどころが分からないってことになりがちです。きちんと自分のものにするには基から丁寧に理解しないとダメですねってことで、今回はクロージャについてその背景から調べてみたいと思います。 歴史と語源 まずは歴史から振り返ってみたいと思います。Wikipediaによるクロージャの解説では、以下のような説明があります。 クロージャの概念は、1960年代にラムダ計算の機械的な実行モデルを構築するために生み出され、1970年に 静的スコープ と 第一級関数 をサポートするPALプログラミング言語で最初に実装された。1964年、

    クロージャ再考 - Qiita
  • Loading...

    nabetama
    nabetama 2011/12/09
    くろーじゃー
  • webdevlog » Blog Archive » JavaScriptとC言語で学ぶクロージャーと参照渡し

    今日読んだ『JavaScript 第5版』の8章らへんに載ってたやつ クロージャーを使いこなせれば一人前のJavaScripterだ!みたいなことが書いてあったので、時間をかけてでも理解しておきたい。だから忘れないうちにメモ。 会社に置いてあって持って帰れないから、うろ覚えだけど、こんなやつだった気がする。 Closure Factory – jsdo.it – share JavaScript, HTML5 and CSS makeClosure()のパラメータであるobjは、グローバル変数として宣言した var d 及び、var dd であるので、obj["get" + name] や obj["set" + name] は、そのオブジェクトのプロパティに関数を作ったということになる。 また、makeColusre()のスコープに存在するvar cValへアクセスするには、getN

  • 1