This is a collection of those very special irregularities, inconstancies and just plain painfully unintuitive moments for the language of the web.

主要なすべてのWebブラウザはJavaScriptエンジンを搭載している。JavaScriptを含んだページをアップしさえすればブラウザ側で動作する。何らかのWebサービスを組み合わせてればそれだけで別のサービスを提供するページを作れる。ブラウザにおけるJavaScript実行性能は日進月歩で高速化しており、WebページやWebアプリケーションを作成する言語として日々その重要性が高まっている。

扱いやすい言語ではあるが、眉を寄せたくなることが多い言語でもある。その不可解で理解しにくい挙動に悩まされたプログラマは少なくないだろう。そこでBrian LeRoux氏が公開をはじめたwtfjsに注目したい。wtfjsはJavaScriptで遭遇する不可解なコードのサンプルをまとめたサイト。サンプルコードを見て心当たりのあるコードも少なくない。たとえば次のようなサンプルコードが掲載されている。

wtfjsより抜粋

wtfjsより抜粋

wtfjsより抜粋

wtfjsより抜粋

wtfjsより抜粋

wtfjsより抜粋

包括的に、そして厳密に情報をまとめているというサイトではないが、JavaScriptを使ったコーディングで気をつけるべき実装例として参考になる。こうした勘違いしやすいポイントをあらかじめ抑えておくことで、コーディング時に遭遇するバグを回避しやすくなる。

サンプル自体は随時追加される形式になっており、追加されたサンプルはRSSでフィード配信されるようにもなっている。追加してほしいサンプルコードがある場合には連絡を入れてほしいとの記載がある。随時追加されることを考えると、RSSリーダに登録しておいてチェック用に利用するというのは悪くない方法だ。

なおwtfjsはWhat the fuck JavaScriptの略称だとみられる。あまり上品な言葉ではないが、ニュアンスとしては「トホホのJavaScript」「ヤレヤレのJavaScript」といったあたりになる。