ブラウザキャッシュではなくローカルストレージを使ったキャッシュシステム「basket.js」
basket.jsはローカルストレージにJavaScriptをキャッシュして高速化をはかるソフトウェアです。
Webの高速化を語る上でキャッシュの存在は欠かせません。そこで使ってみたいのがbasket.jsです。何とHTML5のローカルストレージを使ってキャッシュする仕組みを提供します。
[](http://images.moongift.jp/2013/01/Screenshot 2013-01-21 11.09.31.1358769689.png)
最初の実行。underscore.jsなどが読み込まれています。2回目以降は消えます。
[](http://images.moongift.jp/2013/01/Screenshot 2013-01-21 11.10.39.1358769694.png)
でもちゃんとjQueryオブジェクトは存在します。
basket.requireメソッドを使って対象ファイルを読み込みます。有効期限を設定することも可能です。読み込み失敗をハンドリングすることもできます。普段はそのまま利用でき、remove()やclear()でファイルを解除できます。
basket.jsはJavaScript製、MIT Licenseのオープンソース・ソフトウェアです。
MOONGIFTはこう見る
ローカルストレージが使えるのがHTML5に限定されますが、上手に使うことでブラウザキャッシュとは異なる場所を使ってデータを保持できるようになります。GoogleやBingではJavaScriptやスタイルシートをローカルストレージを使って保存しているそうです。それだけパフォーマンスの効果が大きいと見るべきでしょう。
Webサービスを高速化するためには様々な手法があります。ローカルストレージによる効果がどれほど大きいのかは検証が必要ですが、面白い試みであると言えます。他にも様々な施策を通して高速化を試みるべきでしょう。
basket.js - a simple script loader that caches scripts with localStorage