115

両方が新しいページにリダイレクトする場合のwindow.location.assign()との違いは何ですか?window.location.replace()

4

4 に答える 4

137

を使用window.location.assign("url")すると、新しいドキュメントが読み込まれます。を使用window.location.replace("url")すると、現在のドキュメントが置き換えられ、現在の履歴がそのURLに置き換えられるため、ロードされた前のドキュメントに戻ることはできません。

参照: http: //www.exforsys.com/tutorials/javascript/javascript-location-object.html

于 2010-12-22T03:10:02.667 に答える
39

違いは、履歴の処理方法です。「置換」は履歴を提供しませんが、「割り当て」は履歴を提供します。

于 2010-12-22T03:02:24.137 に答える
33

MDNによると:

この方法との違いは、現在のページassign()を使用した後replace()はセッション履歴に保存されないことです。つまり、ユーザーは[戻る]ボタンを使用してそのページに移動できなくなります。

于 2010-12-22T03:01:53.260 に答える
14
  1. location.assign():

    パスを渡すことによってルートパスを割り当てること。割り当ては、パスが割り当てられた後でも履歴を提供します。

    使用方法:値を渡す必要があります。

    例えば: location.assign("http://google.com")

location.assign()

  1. location.replace():

    履歴を保持したくない場合は、パスを置き換えるのに役立ちます。パスを置き換えると、履歴は表示されません。

    使用方法:値を渡す必要があります。

    例えば: location.replace("http://google.com")

location.repalce()

于 2017-08-31T10:30:31.913 に答える