47 lines
1.2 KiB
JavaScript
47 lines
1.2 KiB
JavaScript
(function (lstURL) {
|
|
|
|
var e = document.createElement('a'),
|
|
lstKeys = [
|
|
'hash',
|
|
'host',
|
|
'hostname',
|
|
'origin',
|
|
'pathname',
|
|
'port',
|
|
'protocol',
|
|
'search'
|
|
],
|
|
|
|
fnURLParse = function (strURL) {
|
|
e.href = strURL;
|
|
|
|
return lstKeys.reduce(
|
|
function (dct, k) {
|
|
dct[k] = e[k];
|
|
return dct;
|
|
}, {}
|
|
);
|
|
};
|
|
|
|
return JSON.stringify(
|
|
lstURL.map(fnURLParse),
|
|
null, 2
|
|
);
|
|
|
|
})([
|
|
"foo://example.com:8042/over/there?name=ferret#nose",
|
|
"urn:example:animal:ferret:nose",
|
|
"jdbc:mysql://test_user:ouupppssss@localhost:3306/sakila?profileSQL=true",
|
|
"ftp://ftp.is.co.za/rfc/rfc1808.txt",
|
|
"http://www.ietf.org/rfc/rfc2396.txt#header1",
|
|
"ldap://[2001:db8::7]/c=GB?objectClass=one&objectClass=two",
|
|
"mailto:John.Doe@example.com",
|
|
"news:comp.infosystems.www.servers.unix",
|
|
"tel:+1-816-555-1212",
|
|
"telnet://192.0.2.16:80/",
|
|
"urn:oasis:names:specification:docbook:dtd:xml:4.1.2",
|
|
"ssh://alice@example.com",
|
|
"https://bob:pass@example.com/place",
|
|
"http://example.com/?a=1&b=2+2&c=3&c=4&d=%65%6e%63%6F%64%65%64"
|
|
]);
|