javascript 如何检查 URL 是否与当前页面同源?

JPo*_*ock 3 javascript url

如何检查特定 URL 字符串是否来自与当前页面相同的来源/主机?例如,如果我想绑定到链接,但仅防止默认链接到同一主机...

Abe*_*tur 7

如今这应该可以安全使用:

function sameOrigin(a, b) {
    const urlA = new URL(a);
    const urlB = new URL(b);
    return urlA.origin === urlB.origin;
}

console.log(sameOrigin('https://stacksnippets.net', window.location))
Run Code Online (Sandbox Code Playgroud)