Saltar al contenido

window.location.indexOf no funciona en Javascript

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.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *