El objeto location
es uno de los objetos más útiles del BOM. Debido a la falta de estandarización, location
es una propiedad tanto del objeto window
como del objeto document
.
El objeto location
representa la URL de la página HTML que se muestra en la ventana del navegador y proporciona varias propiedades útiles para el manejo de la URL:
Propiedad | Descripción |
---|---|
hash | El contenido de la URL que se encuentra después del signo # (para los enlaces de las anclas)http://www.ejemplo.com/ruta1/ruta2/pagina.html#seccion hash = #seccion |
host | El nombre del servidorhttp://www.ejemplo.com/ruta1/ruta2/pagina.html#seccion host = www.ejemplo.com |
hostname | La mayoría de las veces coincide con host , aunque en ocasiones, se eliminan las www del principiohttp://www.ejemplo.com/ruta1/ruta2/pagina.html#seccion hostname = www.ejemplo.com |
href | La URL completa de la página actualhttp://www.ejemplo.com/ruta1/ruta2/pagina.html#seccion URL = http://www.ejemplo.com/ruta1/ruta2/pagina.html#seccion |
pathname | Todo el contenido que se encuentra después del hosthttp://www.ejemplo.com/ruta1/ruta2/pagina.html#seccion pathname = /ruta1/ruta2/pagina.html |
port | Si se especifica en la URL, el puerto accedido http://www.ejemplo.com:8080/ruta1/ruta2/pagina.html#seccion port = 8080 La mayoría de URL no proporcionan un puerto, por lo que su contenido es vacío http://www.ejemplo.com/ruta1/ruta2/pagina.html#seccion port = (vacío) |
protocol | El protocolo empleado por la URL, es decir, todo lo que se encuentra antes de las dos barras inclinadas // http://www.ejemplo.com/ruta1/ruta2/pagina.html#seccion protocol = http: |
search | Todo el contenido que se encuentra tras el símbolo ? , es decir, la consulta o "query string"http://www.ejemplo.com/pagina.php?variable1=valor1&variable2=valor2 search = ?variable1=valor1&variable2=valor2 |
De todas las propiedades, la más utilizada es location.href
, que permite obtener o establecer la dirección de la página que se muestra en la ventana del navegador.
Además de las propiedades de la tabla anterior, el objeto location
contiene numerosos métodos y funciones. Algunos de los métodos más útiles son los siguientes:
// Método assign() location.assign("http://www.ejemplo.com"); // Equivalente a location.href = "http://www.ejemplo.com" // Método replace() location.replace("http://www.ejemplo.com"); // Similar a assign(), salvo que se borra la página actual del array history del navegador // Método reload() location.reload(true); /* Recarga la página. Si el argumento es true, se carga la página desde el servidor. Si es false, se carga desde la cache del navegador */