Edit in JSFiddle

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>