Hola, hallamos la solución a tu interrogante, continúa leyendo y la obtendrás un poco más abajo.
Solución:
window.location
es una propiedad de acceso, y obtener su valor le da un objeto, no un stringpor lo que no tiene un indexOf
función. (Es perfectamente comprensible que la gente a veces piense que es un stringdesde cuando tu colocar su valor, el setter de la propiedad de acceso acepta una string; es decir, window.location = "some url";
en realidad funciona pero cuando tu obtener eso, no obtienes un string.)
Puedes usar window.location.toString()
, String(window.location)
o window.location.href
conseguir un string si lo desea, o use cualquiera de sus diversas propiedades para verificar los detalles. Desde el enlace, URL de ejemplo dada http://www.example.com:80/search?q=devmo#test
:
hash
: la parte de la URL que sigue al símbolo #, incluido el símbolo #. Puede escuchar el evento hashchange para recibir notificaciones de los cambios en el hash en los navegadores compatibles.
Ejemplo:#test
host
: el nombre de host y el número de puerto.
Ejemplo:www.example.com:80
hostname
: El nombre de host (sin el número de puerto).
Ejemplo:www.example.com
href
: la URL completa.
Ejemplo:http://www.example.com:80/search?q=devmo#test
pathname
: La ruta (relativa al host).
Ejemplo:/search
port
: El número de puerto de la URL.
Ejemplo:80
protocol
: El protocolo de la URL.
Ejemplo:http:
search
: La parte de la URL que sigue al ? símbolo, incluido el ? símbolo.
Ejemplo:?q=devmo
Por ejemplo, para su ejemplo citado, puede verificar window.location.hostname === "localhost"
.
Por lo que sé window.location
es un Location object
.
Por ejemplo, window.location.href
le dará la URL completa.
var url = window.location.href;
alert(url.indexOf("domain"));
Pero este tipo de verificación está destinada a desencadenar false-positivos. eres mejor usando window.location.hostname
propiedad que contiene la parte del nombre del host.
var hostname = window.location.hostname;
alert(hostname === "my.domain.com");
Si estás contento con lo expuesto, tienes la libertad de dejar una noticia acerca de qué le añadirías a esta reseña.