JavaScriptのデバッグコード(console.log等)を数行で無効化する

ここのところ、JavaScriptを使って結構な量のコードを書くことが増えて、デバッグ用に使っている console.log や console.time などをリリース前に簡単に消去できないかと思っていました。
(最初から消すことを念頭において書いていけばいいのだが)

リリース前に .js は Optimize(最適化)を行いますが、requirejsなどの最適化ツール(r.js)を通せばやってくれるものだと思っていました。が、どうもツールによっては、やってくれないことがあって困った。

そこでまぁ、ちょっと考えたのですが、JavaScriptってネイティブなメソッドの上書き(あまり好ましくないが)が出来てしまうんですよね。

console.log そのものを、何も返さない関数のオブジェクトで上書きしてやればいいじゃないかと。

window.console = {};
window.console.log = function(i){return;};
window.console.time = function(i){return;};
window.console.timeEnd = function(i){return;};

このコードが実行されると、console.log や console.time は何も出力しない関数になります。

リリース時は、スクリプトの先頭に上記のコードを記述しておいてやれば、
コードからわざわざ console.log 等を消す作業は必要なくなります。

そんなわけで。

Ustreamの2012年5月〜2013年5月までの日本語ツイート推移

Ustweet が回収した、Ustream の日本語ツイート集計(2012年5月〜2013年5月分)です。Firehoseではなく、また日本語判定に漏れたツイートもあるため、抜けはそれなりにあるでしょうが、推移の目安にはなるかと思います。

集計にあたって

  • TwitterのStreaming API、track利用。
  • Ustreamの(チャンネル)短縮URLが含まれ、かつ日本語を含むと判断されたツイートを収集。
  • チャンネル数は、ツイートされたUstreamの短縮URLのユニーク数で集計。
  • ベストエフォートです。正確さを保証するものではありません。

ホームを使わないTwitter生活

最近、自分が実践している「ホームタイムラインを使わない」Twitterの使い方。

いままでの僕のリストの使い方は、「今は見ないけど残しておきたい人」「ある特定の話題(Webに強いとか、ニュース発信元)」など備忘録としてのまとめであり、作ってもほとんど見ることがないものでしたが、リストをメインに据えた使い方を始めました。

全文検索エンジンSennaの2indバグを回避する方法

Senna (Tritonn) とは、未来検索ブラジルが開発した全文検索エンジンで、2indという機能があります。

(http://d.hatena.ne.jp/keyword/Senna)

2ind(2インデックス同時使用)というのは

MySQLなどでクエリを実行する際、1つのテーブルに対して、全文検索用のFULLTEXTインデックスと、他のインデックスを組み合わせて利用(インデックスマージ)できる機能です。

http://qwik.jp/tritonn/userguide.html#0cb0baa8b27d86e9233f601a9cc9cc4f

この機能を使わず全文検索を実行した場合、関連度合いでソートされた結果が返されます。ですが、大体の用途において、更新日時などでソートしたいことが多いと思います。

PAGE TOP