JavaScriptでURLをカッコよくパースする

次のようなURLがあったとします。
http://www.printry.jp/product/category/detail.php?product_category_id=15#productId193
これをパースしていろいろ弄りたいのですが、
「?」で分割して、右側を「&(&)」で分割して、「=」で分割して…
というのが何をやっているのか一目瞭然なのですが、次の方法があるようです。


var elm = document.createElement('a');
elm.href = 'http://www.printry.jp/product/category/detail.php?product_category_id=15#productId193';

console.log(elm.hostname);
// www.printry.jp
console.log(elm.pathname);
// /product/category/detail.php
console.log(elm.search);
// ?product_category_id=15
console.log(elm.hash);
// #productId193

これはなるほど、DOMに丸投げというわけですね。
カッコよく決まってデメタシデメタシ。