タグ

ブックマーク / amachang.hatenablog.com (5)

  • IT戦記 - JavaScript を学ぶ際に一番重要なのに、誤解されがちな setTimeout 系の概念

    おそらく、JavaScript を使いこなす肝は setInterval、setTimeout、イベントによる関数の実行を理解することだと思う 例えば 次のコードの結果を考えたとき document.write("hoge\n"); setTimeout(function(){ document.write("fuga\n") }, 1000); document.write("piyo\n");普通に JavaScript を使いこなしてる人なら、hoge → piyo と表示して、 1 秒後に fuga が表示されるな。って思うはずなんです。 でも、 JavaScript を始めたばっかりの人の中には、 hoge と表示したあと 1 秒後に fuga → piyo と表示するな。って思ってる人が非常に多い。(経験的に) 何故か? たぶん、どのサイトの setTimeout の説明を見て

    IT戦記 - JavaScript を学ぶ際に一番重要なのに、誤解されがちな setTimeout 系の概念
    serian
    serian 2011/09/29
    「JavaScript には実行キューがあり、setTimeout は指定秒後にそれに関数を登録している、ということなのである。」/タイムアウトしたらキューに割り込む。
  • Effective Java 読書会 3 日目「それ Apache Commons で出来るよ」 - IT戦記

    はじめに じゃっばじゃばにしてやんよー♪っと ( ´ー`)フゥー...(゚Д゚)ハッ! どーん 今日読んだところ 45 ページ〜 66 ページ 前回はこちら Effective Java 読書会 2 日目 「equals night」 - IT戦記 hashCode 2 契約 シグニフィカントなフィールドを変更しなければ、いつ hashCode を呼び出しても値は変わらない x.equals(y) が true の場合は、 x.hashCode() == y.hashCode() が true equals をオーバーライドしたら hashCode もオーバーライドすべき 前述の 2 契約を守るために必要 x.equals(y) が false の場合 かならずしも、 x.hashCode() != y.hashCode() になる必要はないが、 値がバラけているほうが HashMap

    Effective Java 読書会 3 日目「それ Apache Commons で出来るよ」 - IT戦記
    serian
    serian 2010/02/22
    ToStringBuilderとかあるのか。
  • 新ブックマークレットを使っていなくても、ブクマ時に画像を指定できるようにする方法 - IT戦記

    新ブックマークレットでは ブックマーク時に画像を指定できるみたいですね。 この右側の画像をクリックすると出来るみたいです。 詳しくは以下の「画像を設定・変更する」を参照 ブックマークレットの使い方 - はてなブックマークヘルプ で、これが出来ると結構うれしいです 何がうれしいか ホッテントリとかに出たときに以下のように画像も一緒に表示されるんです。 キャッチーな画像だとやっぱり読みたくなりますしね! でも、新ブックマークレットじゃないとそれができない ><かなしい! だって、自分もやりたいじゃないですか! というわけで 新ブックマークレットで出来るようにする方法を紹介します。 以下のように form#add-form 要素に image という名前の input 要素を作ってそこに画像の URL を書いて送信すればいいみたいです (document.getElementById('add-

    新ブックマークレットを使っていなくても、ブクマ時に画像を指定できるようにする方法 - IT戦記
  • はてなブックマークのコンテンツの JavaScript を高速化する - IT戦記

    はじめに 「新はてなブックマーク」になったということで、とっても便利になったのですが、ブックマーク一覧ページ*1が若干 JavaScript に時間が掛かっているみたいです。 というわけで 調査してみたいと思います。調査して、改善できそうなところは後で纏めて「はてなアイデア」にでも登録しようと思います。 この日記は調査しながら、過程を書いていくつもりです。 準備 まずは、人のサイトの JavaScript を書き換えて試してみるための環境を作ります。 作業用ディレクトリを作る とりあえず、ホームに HatenaJS というディレクトリを作ります。 $ mkdir HatenaJS $ cd HatenaJS CocProxy をダウンロードしてくる 以下から CocProxy というツールをダウンロードしてきます。 http://coderepos.org/share/wiki/CocPr

    はてなブックマークのコンテンツの JavaScript を高速化する - IT戦記
    serian
    serian 2008/12/09
    勉強になる
  • それすぐ実行!JavaScript! - IT戦記

    思った JavaScript はすぐに実行してみましょう! ブラウザの URL 入力欄に javascript:(function() { /*実行したいコードを書く*/ })()FireBug を使ってる人は、コンソール開いて実行したいコードを書く。 たとえばこんなことができます。 これらの例は僕が日頃使っているものです。 グローバルで使える関数を列挙する(Firefox Only) FireBug用 for(var n in window) if(typeof window[n]=='function')console.log(n); URL用 javascript:(function(){var b='';for(var n in window)if(typeof window[n]=='function')b+=n+"\n";alert(b)})() Object.prototyp

    それすぐ実行!JavaScript! - IT戦記
    serian
    serian 2006/10/17
    こりゃいい!
  • 1