Методы window.location.href и window.open () в JavaScript - PullRequest
238 голосов
/ 16 августа 2011

В чем разница между window.location.href и window.open () методами в JavaScript?

Ответы [ 6 ]

458 голосов
/ 16 августа 2011

window.location.href - это , а не метод, это свойство, которое сообщит вам текущее местоположение URL браузера.Изменение значения свойства приведет к перенаправлению страницы.

window.open() - это метод, с помощью которого вы можете передать URL-адрес, который хотите открыть в новом окне.Например:

пример window.location.href:

window.location.href = 'http://www.google.com'; //Will take you to Google.

пример window.open ():

window.open('http://www.google.com'); //This will open Google in a new window.

Дополнительная информация:

window.open() могут быть переданы дополнительные параметры.Смотрите: учебник window.open

30 голосов
/ 16 августа 2011
  • window.open откроет новый браузер с указанным URL.

  • window.location.href откроет URL в окне, в котором вызывается код,

Обратите также внимание, что window.open() является функцией самого объекта окна, тогда как window.location является объектом, который предоставляет множество других методов и свойств .

13 голосов
/ 16 августа 2011

window.open - метод;Вы можете открыть новое окно и настроить его.window.location.href - это просто свойство текущего окна.

10 голосов
/ 08 сентября 2016

Уже есть ответы, которые описывают свойство window.location.href и метод window.open () .

Я пойду по объективному использованию:

1.Для перенаправления страницы на другой

используйте window.location.href.Установите для свойства href значение href другой страницы.

2.Открыть ссылку в новом или определенном окне.

Использовать window.open ().Передайте параметры в соответствии с вашей целью.

3.Узнать текущий адрес страницы

Использовать window.location.href.Получить значение свойства window.location.href.Вы также можете получить конкретный протокол, имя хоста, хеш-строку из объекта window.location.

См. Местоположение объекта для получения дополнительной информации.

8 голосов
/ 16 августа 2011

window.open () откроет новое окно, тогда как window.location.href откроет новый URL в вашем текущем окне.

0 голосов
/ 08 апреля 2019

window.open откроет URL в новой вкладке браузера

window.location.href откроет URL в текущей вкладке (вместо этого вы можете использовать location)

Здесь пример fiddle (в SO фрагментах window.open не работает)

var url = 'https://example.com';

function go1() { window.open(url) }

function go2() { window.location.href = url }

function go3() { location = url }
<div>Go by:</div>
<button onclick="go1()">window.open</button>
<button onclick="go2()">window.location.href</button>
<button onclick="go3()">location</button>
...