タグ

javascriptに関するfoooomioのブックマーク (184)

  • 無敵タイマーに機能を追加した - 音の鳴るブログ

    Chrome とか Firefox でタイマーを使っているとき、別のタブを選択するとタイマーの精度が落ちる。 音を出すプログラムとかでタイマー制御しているときとかに困る(機嫌よく音を出していたのに急にガタガタになったりする)ので、WebWorkerを使ってバックグラウンドでタイマーを動作させることで、別のタブを選択しても精度が落ちない無敵タイマーというのを考案して使っていたのだけど、それに機能を追加した。 MutekiTimer.use() とすれば window.setInterval と window.clearInterval を無敵タイマーバージョンで置き換えるので、既存のプログラムに導入するのが非常に簡単になる。あんまり試してないけど。 あと、gistのどっかにコードを置いていたのだけどGitHubに移した。GitHub Pagesでデモが動かせるので便利です。 http://m

    無敵タイマーに機能を追加した - 音の鳴るブログ
  • ハタさんのブログ : Javascriptによる大規模開発の覚え書き。高速化編

    前回書いた「Javascriptによる大規模開発の覚え書き」が凄いことになってました。 今回は、省略した「5.高速化せよ」について書きます。 僕にとってjavascriptは非常に高速な言語です。それは何が高速か 開発速度が高速である 開発速度、及びそこに至るまでの修得速度はとても高速です。動的言語を上手く操る開発者はもちろん、開発に不慣れな(言葉が悪いけど)新人達でさえ「動く」モノをサクっと作ってしまえる。 また、プラットフォーム(? というかブラウザ)が広く普及しているので、ググればスグに問題解決もできる。 それにローカルで簡単に作れる。javascript、それは動作環境を含めて高速です。 高速にUI操作ができる(UI操作が非常に簡単である) swingとかでUI操作をするには多くのオブジェクト操作をしなければならないけど、javascript(もといDHTML)は非常に簡単に

  • NaN をなんとかしたい上での諸注意 と global.isFinite() の罠 - Qiita

    typeof NaN // 'number' typeof Inifity // 'number' typeof -Infinity // 'number' toString.call(NaN); // '[object Number]' Infinity == Infinity // true Infinity == -Infinity // false Infinity == NaN // false NaN == NaN // false NaN === NaN // false (!!) みんな知ってるね 2. global.isNaN("NaN") は true, global.isFinite("0") も true で、このNaN や Infinity が厄介である為に isNaN() と isFinite() がグローバルオブジェクトに用意されているのですが、これもまた罠が

    NaN をなんとかしたい上での諸注意 と global.isFinite() の罠 - Qiita
  • 要約: Apple iPhone5のページのJPEGとJSとcanvasタグによるビデオの実装がやばいという話

    2012 年 9 月 26 日 追記しました。 要約エントリー。 元記事 : iPhone 5 website teardown: How Apple compresses video using JPEG, JSON, and <canvas> アップルのサイトの iPhone5 のページにある「スライドしてアンロック」のアニメーションが、信じられない実装になっている、という話。簡単に要約してみた。(ミスなどの指摘は @lowply までお願いします) もともと h.264 と WebM の動画フォーマット戦争でブラウザ互換性の問題がまだ残っている上、iPhone などは「再生ボタン」を押さないと再生できなかったりするので、こうした短いアニメーションに video タグを使うことは最適解ではなかったらしい。 そこで発想の転換をして、Retina MBP のページでは、蓋が開くたった 2

    要約: Apple iPhone5のページのJPEGとJSとcanvasタグによるビデオの実装がやばいという話