Respuestas:
window.location.hrefno es un método, es una propiedad que le indicará la ubicación actual de la URL del navegador. Cambiar el valor de la propiedad redirigirá la página.
window.open()es un método al que puede pasar una URL que desea abrir en una nueva ventana. Por ejemplo:
Ejemplo de window.location.href:
window.location.href = 'http://www.google.com'; //Will take you to Google.
Ejemplo de window.open ():
window.open('http://www.google.com'); //This will open Google in a new window.
window.open()Se pueden pasar parámetros adicionales. Ver: tutorial window.open
window.location.hrefes una propiedad, no un método, pero Internet Explorer (al menos la versión 10) le permite tratarlo también hrefcomo un método. Lo he visto funcionar, solo en IE10, en una página que he usado. Probablemente por eso el autor de la pregunta llamaba a hrefun método. Consulte la pregunta Incompatibilidad de IE con window.location.href . Pero sí, es mejor usarlo hrefcomo una propiedad, que funcionará en cualquier navegador, incluido IE .
window.location.hrefla misma manera. Después de todo, las versiones más nuevas de iE generalmente se basan más en estándares, no menos. Entonces, si IE10 todavía está rompiendo el estándar, entonces las versiones anteriores probablemente también lo hicieron.
window.open abrirá un nuevo navegador con la URL especificada.
window.location.href abrirá la URL en la ventana en la que se llama el código.
Tenga en cuenta también que window.open()es una función en el propio objeto de la ventana, mientras que window.locationes un objeto que expone una variedad de otros métodos y propiedades .
window.open es un método; puede abrir una nueva ventana y personalizarla. window.location.href es solo una propiedad de la ventana actual.
Ya hay respuestas que describen la propiedad window.location.href y el método window.open () .
Iré por uso objetivo:
Use window.location.href. Establezca la propiedad href en la href de otra página.
Use window.open (). Pase los parámetros según su objetivo.
Use window.location.href. Obtener el valor de la propiedad window.location.href. También puede obtener un protocolo específico, nombre de host, hashstring del objeto window.location.
Ver Objeto de ubicación para más información.
window.open ()abrirá una nueva ventana, mientras window.location.hrefque abrirá la nueva URL en su ventana actual.
Se window.openabrirá la URL en la nueva pestaña del navegador
Se window.location.hrefabrirá la URL en la pestaña actual (en su lugar, puede usar location)
Aquí hay un ejemplo de violín (en SO snippets window.open no funciona)