¿Cómo analizo una URL en el nombre de host y la ruta en JavaScript?

Me gustaría tomar una cadena

var a = "http://example.com/aa/bb/"

y procesarlo en un objeto tal que

a.hostname == "example.com"

a.pathname == "/aa/bb"