[23] Location
インターフェイスの
replace
メソッドは、置換有効で navigate
することを指示するものです。 同じく assign
メソッドは、原則として置換有効とせずに navigate
することを指示するものです。
[16] Clarify the error handling for Location#{assign,replace} · whatwg/html@9cbe9b3 ( 版) <https://github.com/whatwg/html/commit/9cbe9b33bd969ad0590370ad97a3e282226dfd9c>
[17] Define security around Window, WindowProxy, and Location properly · whatwg/html@acae3df ( 版) <https://github.com/whatwg/html/commit/acae3df652b382e9f4f1d1b4dc7e08e2b00df821>
[18] Merge effective script origin into origin · whatwg/html@8a843f2 ( 版) <https://github.com/whatwg/html/commit/8a843f2169a6864a3024c4329528dccb2051d275>
[39] Editorial: turn "exceptions enabled" into a flag ( (annevk著, )) <https://github.com/whatwg/html/commit/879edbfcb25586caec8df93f303a434a700a18bc>
[40] Bug 158061 – location.href and location.assign() differ in Referer ( ()) <https://bugs.webkit.org/show_bug.cgi?id=158061>
[41] 17041 – Setting location before the page is done loading shouldn't always be a replace load ( ()) <https://www.w3.org/Bugs/Public/show_bug.cgi?id=17041>
location.assign
とは違ってlocation.replace
では起源の検査は行われません。つまり他の任意のフレームから呼び出すことができます。