function parseURL(url) {
var anchor = document.createElement('a')
var undefined = void 0
var parts = {
protocol: undefined,
host: undefined,
port: undefined,
hostname: undefined,
pathname: undefined,
search: undefined,
hash: undefined
}
anchor.href = url
for (var key in parts) {
parts[key] = anchor[key]
}
return parts
}
document.getElementById('parse').onclick = function () {
var parts = parseURL(document.getElementById('url').value)
var text = ''
for (var key in parts) {
text += key + ': ' + parts[key] + '\n'
}
document.getElementById('result').innerText = text
}
<input type="text" id="url" value="https://github.com:8000/foo?bar#quz" />
<button id="parse">Parse</button>
<pre id="result"></pre>