Estamos más familiarizados con la ubicación de la ventana. Tiene propiedades tales como protocolo, nombre de host, host, puerto, búsqueda, hash, href, rathname, etc. La etiqueta es la misma que la ubicación de la ventana, y tiene tales propiedades, que pueden facilitarnos para analizar la URL, hablar menos y agregar código.
función parseurl (url) {var a = document.createElement ('a'); a.href = url; return {fuente: url, protocol: a.protocol.replace (':', ''), host: a.hostname, port: a.port || '80', consulta: a.search, parámetros: (function () {var = {{}, seg, seg, seg. a.search.replace (/^/?/, ''). Split ('&'), len = seg.length, i = 0, s; for (; i <len; i ++) {if (! seg [i]) {continúa; (a.pathname.match (/// ([^//?#]+) $/i) || [, '']) [1], hash: a.hash.replace ('#', ''), ruta: a.pathname.replace (/^([^//])/, '/$ 1'), relativo: relativo: (a.href.match (/tps?: //// [^//]+(.+)/) || [, '']) [1], segmentos: a.pathname.replace (/^////, ''). Split ('/')};};};};Dirección de prueba
console.log (parseurl ("http://www.w3school.com.cn/jsref/dom_obj_anchor.asp?type=2#id2"));
Los resultados son los siguientes
La copia del código es la siguiente:
{
Archivo: "Dom_obj_anchor.asp",
Hash: "ID2",
Anfitrión: "www.w3school.com.cn",
parámetros: {tipo: "2"},
ruta: "/jsref/dom_obj_anchor.asp",
Puerto: "80",
Protocolo: "http",
consulta: "? Tipo = 2",
relativo: "/jsref/dom_obj_anchor.asp?type=2#id2",
Segmentos: [0: "JSref", 1: "Dom_obj_anchor.asp"],
Fuente: http://www.w3school.com.cn/jsref/dom_obj_anchor.asp?type=2#id2
}