检查当前 window.location.href 是否等于数组中任何字符串的更简洁方法
cleaner way to check whether or not a the current window.location.href is equal to any of the strings in the array
如果 url 等于以下 url 数组中的任何字符串,我将尝试进行重定向:
所以我做了以下事情
function redirectUser() {
if (window.location.href === 'https://swish.com/login' || window.location.href === 'https://swish.com/register' || window.location.href === 'https://swish.com/overview') {
window.location.replace('https://swish.com/onboard');
}
}
但这有点难看,所以我想把 url 放在一个数组中,然后做这样的事情:
function redirectUser() {
const urls = ['https://swish.com/login', 'https://swish.com/register', 'https://swish.com/overview' ]
for(let url of urls) {
if (window.location.href === url) {
window.location.replace('https://swish.com/onboard');
}
}
}
还有其他方法吗?如果不是,您认为哪个是更好的选择?谢谢!
您似乎已经在代码中静态拥有了所有字符串。所以你可以尝试使用 switch
,它的性能比 if
check here 更快。
如果您通过某种逻辑复制字符串,那么您还可以选择 Regular Expressions ,这会更快。否则,您可以坚持使用数组。
我想它会对你有所帮助
function redirectUser() {
const urls = ['https://swish.com/login', 'https://swish.com/register',
'https://swish.com/overview' ]
if(urls.includes(window.location.href)){
window.location.replace('https://swish.com/onboard');
}
}
如果 url 等于以下 url 数组中的任何字符串,我将尝试进行重定向:
所以我做了以下事情
function redirectUser() {
if (window.location.href === 'https://swish.com/login' || window.location.href === 'https://swish.com/register' || window.location.href === 'https://swish.com/overview') {
window.location.replace('https://swish.com/onboard');
}
}
但这有点难看,所以我想把 url 放在一个数组中,然后做这样的事情:
function redirectUser() {
const urls = ['https://swish.com/login', 'https://swish.com/register', 'https://swish.com/overview' ]
for(let url of urls) {
if (window.location.href === url) {
window.location.replace('https://swish.com/onboard');
}
}
}
还有其他方法吗?如果不是,您认为哪个是更好的选择?谢谢!
您似乎已经在代码中静态拥有了所有字符串。所以你可以尝试使用 switch
,它的性能比 if
check here 更快。
如果您通过某种逻辑复制字符串,那么您还可以选择 Regular Expressions ,这会更快。否则,您可以坚持使用数组。
我想它会对你有所帮助
function redirectUser() {
const urls = ['https://swish.com/login', 'https://swish.com/register',
'https://swish.com/overview' ]
if(urls.includes(window.location.href)){
window.location.replace('https://swish.com/onboard');
}
}