Private content!This content has been marked as private by the uploader.

前回はスコープチェインのお話に入るための予備知識として「変数オブジェクト」についてのお話をしました。それを踏まえて、今回はスコープチェインと、それによって実現されているクロージャについてしっかり学んでいきたいと思います。 スコープチェインとは 変数オブジェクトに関する説明はしっかりご理解頂けましたでしょうか?JavaScriptの変数は、全て変数オブジェクトのプロパティとして扱われている事、そして変数オブジェクトは状況に応じて違うものが使われる(グローバルスコープであればグローバルオブジェクト、ローカルスコープであれば目に見えない変数オブジェクト)というものでした。ローカルスコープに対応する変数オブジェクトは「アクティベーションオブジェクト」と呼ばれ、関数呼び出しが行われると自動的に作成されます。 しかし実際は、変数を参照するという事は、その場における変数オブジェクト「だけ」を探す訳ではあ
Come creare il miglior gioco da casinò Quando si progetta un gioco da casinò, la prima cosa che devi considerare è che tipo di gioco sarà. Ci sono molti diversi tipi di giochi da casinò, dalle slot e video poker ai giochi da tavolo e giochi di carte. Dovrai decidere quale tipo di gioco si adatta meglio alle tue esigenze. Ogni tipo di gioco ha il proprio set di regole e regolamenti, quindi dovrai a
気づいたことやミスしたことなどメモしていたので確認作業。細かい仕様だったり暗黙のルールだったり、テクニックだったり。JSに慣れていたら当たり前なことばかりかもしらん。 追記のところはid:os0xさんより。ありがとうございます! undefined var a; alert(a) // undefined 宣言だけだとundefined。undefinedというのは、宣言している変数に値が入っていませんよ、ということ。 そしてオブジェクトには無いプロパティとか参照すると出てくる。 var a = 100; alert(a.length); // undefined さらに引数も。 function func(val) { alert(val); } func() // undefined 引数はCallオブジェクトってのに格納される。このオブジェクトはローカルの変数が格納されるオブジェクト
このWikiについて snaka個人がTomblooのコードリーディングのメモを残すために作ったものですが、どなたでも編集して頂いてかまいません。 Tombloo関連リンク About Tombloo(Wiki): http://wiki.github.com/to/tombloo Project home: http://github.com/to/tombloo/tree/master コードリーディンング支援用ワンライナ function抽出(function x(y,z)を抽出) ruby -n -e 'puts "function #{$1}" if $_=~/^function\s+(\S+\([^\)]*\))/' < 00_component.js メソッド抽出(x : function(y,z) 形式を抽出) ruby -n -e 'puts "#### #{$1}#{$
はじめに JavaScriptは簡単な言語のようでいて、実は奥が深く、初心者にとってなかなかその本質がわかりにくい言語です。ここでは、JavaScriptの言語的エッセンスを理解できるようなものをFAQ形式で書いてみました。ご意見や誤り等を指摘してもらえたら嬉しいです。 なお、JavaScriptの標準化であるECMAScriptは、今年末にEdition 5 がリリースされる予定です。このFAQは、現在のバージョンであるEdition 3をベースにしています。 ECMAScriptって何ですか? ECMAはEuropean Computer Manufacturer Association(欧州電子計算機工業会)の略で、標準化団体です。NetscapeのJavaScriptとMicrosoftのJScriptをベースに、純粋なプログラム言語部分を抽出したものをECMAで標準化したスクリプ
先日、「JavaScriptのオブジェクトについて考察してみた - あと味」を書いてから、chikuraさんからコメントいただいたり、id:dankogaiさんから「404 Blog Not Found:javascript - にはクラスはない」という記事で言及いただいたり、JavaScript: The Good Partsを読み返したりした結果、newについて調べたいという衝動にかられましたので、その調べた結果を書いてみたいと思います。 newを調べようと思ったキッカケを整理 まずは、そのキッカケから整理します。 chikuraさんのコメントより 押さえるべきポイントは、new演算子の際に何が行われるか?だと思うので、こちらのページもぜひ読んでみてください。 JavaScript の new 演算子の意味: Days on the Moon http://nanto.asablo.j
GoogleがWeb全体のスピードアップにいよいよ本格的に着手, 一社だけではできないと強調 からリンクのあった、 http://code.google.com/intl/ja/speed/articles/optimizing-javascript.html が日本語かと思ったら日本語じゃなかった・・・・。 いやー、意外とというか文字列については、全然知らんかった。 Closureって便利だし、「おぉ〜俺って使ってるジャン」みたいな気になれるからついつい使っちゃうんだけど、高コストなのね・・・・。反省。 ということで、超適当翻訳。どっかの誰かが書いてるかも。 前おき 著者: Google Chromeのエンジニア Gregory Baker, Software Engineer on GMail & Erik Arvidsson 推奨される経験:JavaScriptの実践的な知識 クライ
はてブでreturnがなくなってるという指摘があったのでそれを修正した。 var Hook=function(){ var old; this.addHook=function(obj,method,before,after){ old=obj[method]; obj[method]=function(){ before&&before.apply(this,arguments); var ret=old.apply(this,arguments); after&&after.apply(this,arguments,ret); return ret; } } this.removeHook=function(obj,method){ obj[method]=old; } } var h=new Hook(); h.addHook(window,'confirm', function()
Aptanaなら開発環境とクラウドの連携が超お手軽!:ユカイ、ツーカイ、カイハツ環境!(4)(1/4 ページ) 最近、「Amazon EC2」に始まり「Google App Engine」「Windows Azure」といったクラウドコンピューティングが注目を浴びており、IT関連のニュースでクラウドに関するニュースがない週はありません。クラウドコンピューティングに興味はなくても、Amazon EC2やGoogle App Engineという言葉は聞いたことがある方も多いと思います。 そんな中、本稿ではPHPとRuby on Rails(以下、Rails)、Java、サーバサイドJavaScriptエンジン「Aptana Jaxer」(さらに、Pythonも対応予定)に対応したクラウドサービスを提供する「Aptana Cloud」を利用して、PHPアプリケーションの作成と作成したアプリケーシ
■ [ACAC2015] tumblr 創世記 その八 アドベントカレンダー ACAC2015 編 ( JPerl AC から2010年アドベントカレンダー・カンブリア大爆、そしてRACへ、の巻) 10:39 Advent Calendar Advent Calendar 2015 - Adventar こんにちは、非営利団体リブログ・コモンズ事務局です。本アドベント・カレンダーの場をお借りして、インターネット・アドベント・カレンダーの歴史について述べたいと思います。 2010年に花を咲かせたアドベント・カレンダー文化の外縁にて一つのアドベント・カレンダーが立ち上がりました。技術系のアドベント・カレンダーの中で異彩を放つそれは tumblr 界隈のある一つの typo (d*e*r)として始まりました。リブログの精神に則り始まったそれは Ruby AC の形式に倣っていましたが特筆すべき点
前回までのおさらいと今回のあらすじ 前回までの記事で、JavaScriptでオブジェクト指向を行うにあたって必要な知識を一通り網羅しました。その中で、オブジェクトに属する関数=メソッドについても触れました。 今回は、オブジェクトやメソッドと深い関わりのあるキーワード、「this」について解説したいと思います。 thisキーワードについてきっちり理解する 「thisキーワードについてお話しする」と言いましたが、実はthisキーワードは連載中で既に触れています。連載第9回で、このように述べています。 「(thisキーワードは)実行中のコードが「自分自身」を表すオブジェクトにアクセスするためのキーワードです。」 「実行中のコード」とされているのは、関数(メソッド)などの実行可能なコードということです。つまり、thisキーワードはメソッドをメンバに含むオブジェクトを指す、と言って良いでしょう。 例
はじめに 「新はてなブックマーク」になったということで、とっても便利になったのですが、ブックマーク一覧ページ*1が若干 JavaScript に時間が掛かっているみたいです。 というわけで 調査してみたいと思います。調査して、改善できそうなところは後で纏めて「はてなアイデア」にでも登録しようと思います。 この日記は調査しながら、過程を書いていくつもりです。 準備 まずは、人のサイトの JavaScript を書き換えて試してみるための環境を作ります。 作業用ディレクトリを作る とりあえず、ホームに HatenaJS というディレクトリを作ります。 $ mkdir HatenaJS $ cd HatenaJS CocProxy をダウンロードしてくる 以下から CocProxy というツールをダウンロードしてきます。 http://coderepos.org/share/wiki/CocPr
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く