Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

タグ

arrayに関するlesamoureusesのブックマーク (3)

  • length プロパティのパフォーマンス: Days on the Moon

    「for 文 2.0」(IT戦記) では length プロパティの評価をループの外に出すことにより高速化を図っています。DOM の NodeList オブジェクト (document.getElementsByTagName() などで取得) や HTMLCollection オブジェクト (document.forms などで取得) の length プロパティは「生きている」(オブジェクト取得後の操作が反映される) 、すなわち誤解を恐れずいえば評価のたびに数えなおす必要があるので遅いというのも納得ですが、JavaScript のネイティブオブジェクトである配列の length プロパティはどうなのでしょうか。実際に調べてみました。 以下は 10000 個の span 要素に対する NodeList オブジェクトと配列の length プロパティのパフォーマンスを調べた結果です。数値は

    lesamoureuses
    lesamoureuses 2009/06/18
    ブクマしてなかった。探しまくった。ブクマしとく>length プロパティの評価を 1 回だけにするというのは NodeList に対しては有効ですが、配列に対してはよほど性能が求められる場合を除けば大きな意味はない
  • 404 Blog Not Found:アルゴリズム百選 - ハッシュを再発明する

    2007年12月03日11:15 カテゴリアルゴリズム百選 アルゴリズム百選 - ハッシュを再発明する (実はハッシュを使って)配列を再発明したところで、今度は配列を使ってハッシュを再発明してみます。 現代におけるプログラミングでは、連想配列(associative array)というものを非常によく使います。通常の配列では、データを取り出すのに整数の番号を使いますが、連想配列ではその代わりに文字列を使います。これは非常に便利で、多くの言語ではオブジェクトの実装にこの連想配列を用いています。JavaScriptのオブジェクトも実は連想配列です。 しかし、これを実装するには、少し工夫が必要です。単なる配列であれば、ただ等間隔に並べておけば、「何番目を出してくれ」で事足りますが、連想配列で「'dankogai'番目」といっても人間にもコンピューターにもなんのことかさっぱりわかりません。 誰でも

    404 Blog Not Found:アルゴリズム百選 - ハッシュを再発明する
    lesamoureuses
    lesamoureuses 2007/12/03
    へぇ。ハッシュってこうやって作るのか。
  • 配列を結合したり、配列を初期化したり - IT戦記

    既出かもー 配列の結合 var array1 = [1, 2, 3]; var array2 = [4, 5, 6]; [].push.apply(array1, array2); alert(array1); // [1, 2, 3, 4, 5, 6] 3文目で空配列を使ってるのは書くのが短いからってだけ。 配列の初期化 function hoge() { var args = []; [].push.apply(args, arguments); alert(args); }; hoge(1, 2, 3); // [1, 2, 3]

    配列を結合したり、配列を初期化したり - IT戦記
    lesamoureuses
    lesamoureuses 2007/08/13
    配列の結合や初期化にpushを使うという話
  • 1