pushStateを使うとAjaxを使ったWebアプリケーションにも一意のURLを設けられるようになります。また、既に別な画面を表示しているユーザはAjaxでデータの転送量を減らし、最初の表示時はHTMLをレンダリングすると言った仕組みにもできます。 そんなpushStateやURLごとのルーティングを容易に実装できるようにしてくれるライブラリがkazitori.jsです。外部ライブラリ非依存なのでjQueryなど他のライブラリと組み合わせて使うこともできます。 サンプルのコードです。 class Router extends Kazitori beforeAnytime:["testBefore"] befores: '/<int:id>':['testShow'] routes : '/':'index' '/</int:id><int:id>':'show' '/<string:us