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 servidor http://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 principio http://www.ejemplo.com/ruta1/ruta2/pagina.html#seccion hostname = www.ejemplo.com |
href |
La URL completa de la página actual http://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 host http://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 */