Різниця між window.location.assign () та window.location.replace ()


102

Яка різниця між window.location.assign()і window.location.replace()коли обидва переадресовують на нову сторінку?

Відповіді:


128

Використання window.location.assign("url")просто призведе до завантаження нового документа. Використання window.location.replace("url")замінить поточний документ і замінить поточну історію на цю URL-адресу, щоб вона не змогла повернутися до попереднього завантаженого документа.

Довідка: http://www.exforsys.com/tutorials/javascript/javascript-location-object.html


36

Різниця полягає в тому, як обробляється історія. "Замінити" не дасть вам історії, "призначити" буде.


31

За даними MDN:

Відмінність від assign()методу полягає в тому, що після використання replace()поточної сторінки не буде збережено історію сеансів, тобто користувач не зможе використовувати кнопку Назад для переходу до неї.


10
  1. location.assign ():

    Призначити шлях маршруту, пройшовши в нього шлях. Assign надасть вам історію навіть після того, як був призначений шлях.

    Спосіб використання: в нього слід передати значення.

    Наприклад: location.assign("http://google.com")

location.assign ()

  1. location.replace ():

    Це допомагає замінити шлях, якщо ви не хочете зберігати історію. Він не дасть вам історії, як тільки ви заміните її шлях.

    Спосіб використання: в нього слід передати значення.

    Наприклад: location.replace("http://google.com")

location.repalce ()

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.