ブックマーク / qiita.com/mohayonao (4)

  • 別タブを選択しても精度の落ちないタイマー - Qiita

    JavaScriptで定期的な処理を行う場合、window.setIntervalを使いますが、ChromeやFirefoxのwindow.setIntervalは別タブを選択すると精度(実行間隔)が落ち、例えばゲーム音声処理などで精度を保ちたい場合に問題になることがあります。 WebWorkersを使ってバックグラウンドでタイマーを動作させると、別タブを選択しても精度の落ちないタイマーを作ることができます。 var MutekiTimer = (function() { var MutekiTimer = function() { initialize.apply(this, arguments); }, $this = MutekiTimer.prototype; var TIMER_PATH = (function() { var BlobBuilder, URL, builder

    別タブを選択しても精度の落ちないタイマー - Qiita
    t_f_m
    t_f_m 2018/04/05
  • JavaScript のクラス構文で setter/getter をオーバーライドするとき - Qiita

    たとえば以下のような 数値 を格納するクラスがあって、それを継承した 整数 を格納するクラスを作る場合。 class NumberHolder { constructor(value) { this.value = value; } set value(value) { this._value = +value || 0; } get value() { return this._value; } } class IntHolder extends NumberHolder {}

    JavaScript のクラス構文で setter/getter をオーバーライドするとき - Qiita
    t_f_m
    t_f_m 2016/03/07
    ニコイチ
  • AudioWorker を試してみる - Qiita

    2016.09.08 追記 AudioWorkerは編纂中の仕様から削除されました。Web Audio API先生の次回作AudioWorkletにご期待ください!! Web Audio API には ScriptProcessorNode という、JavaScript で信号処理を記述するための部品があります。Web Audio API で用意されている部品の組み合わせではやりようがない処理をしたいときに重宝するのですが、最新のドラフト仕様では DEPRECATED となっていて将来的には廃止されるようです。 そして廃止される ScriptProcessorNode に変わって提案されているのが AudioWorker という仕組みで、ScriptProcessorNode との大きな違いとしてメインスレッドで行っていた信号処理をワーカースレッドで行うようになります。また、任意の Aud

    AudioWorker を試してみる - Qiita
    t_f_m
    t_f_m 2016/01/06
  • 背景をCanvasにする - Qiita

    背景をCanvasにしてグリグリ動かすとインパクトがあって良い。(これとかこういう感じ) 少し工夫しないとCanvasが前面に来てボタンの操作とかができなくなるので、下記のようなHTML/CSSを書いてやる。 <body> <canvas id="canvas"></canvas> <section id="body> /* 実際のbodyはここに書く */ </section> </body> #canvas { position:fixed; top:0; left:0; width:100%; height:100%; } #body { position:absolute; top:0; left:0; }

    背景をCanvasにする - Qiita
    t_f_m
    t_f_m 2015/07/30
  • 1