第1回 JavaScriptの復権 (2007/06/12)
読みどころはAptana Studioの紹介あたりでしょうか。ですが、検索かけてみると、Aptanaについての新しめの情報は見つかりません(2008頃までですね)。廃れてしまっているのでしょうか。
第2回 JavaScriptの関数をマスターしよう (2007/07/10)
Functionコンストラクタによる定義は面白いですね。これは知りませんでした。後半に書かれていますが、関数コンストラクタによる定義と無名関数定義の違い、使い分け、あたりは興味のあるところです。後で出てくるようなのでその時に。高階関数では無名関数の出番で関数コンストラクタは使えない、と無名関数は普通に使うので関数コンストラクタが便利になるポイントで出てこないと有難味がありません。そのあたりはスコープに絡んだ話になるようです。
第3回 変数の宣言とスコープ (2007/08/21)
ローカルスコープ実現のためにこのような方法が紹介されていますが、こういうのはJS使いにとっては常識なのでしょうかね。
(function() {for (var i =0; i < 10; i++) {// ブロック内の処理}})();
無名関数と同様に匿名オブジェクト(with (匿名オブジェクト){})でも疑似ブロック・スコープが構築できるのですね。確かにスコープを作るのであればこちらの方が見た目が良いです。
で、出てきました「関数リテラルとFunctionコンストラクタにおけるスコープの違い」。関数リテラル(無名関数)を定義する時はローカルな環境を取り込むのに対して、Functionコンストラクタはグローバルオブジェクト決め打ちになっているのですね。
クロージャの仕組みを理解する 単純に、内部状態を持った関数(オブジェクトではなく)を作るにはこうすればいいのですね。JavaScript再紹介のリンク先では内部変数、内部関数でクロージャを作って private 変数を実現していましたが、単一関数での内部変数を用意するならこちらの方が簡単です。
第4回 JavaScriptでオブジェクト指向プログラミング (2007/09/25)
このあたりは、以前にJavaScript再入門を読んだ時にしっかりと解説されていた部分です。最初からこちらの解説を読んでも良かったかもしれません。解説対象がほぼ同じ、レベルもほぼおなじでしょう。
0 件のコメント:
コメントを投稿