[英]Javascript replace one or another
我正在嘗試在進行一場比賽或另一場比賽時使用replace
功能。 作為邏輯,它非常簡單,所以我想有一個非常簡單的實現。
我努力了:
var my_url = document.URL;
var tmpl = "?tmpl=component" || "&tmpl=component"; //This is the tricky part
location.href = my_url.replace(tmpl,"");
...但是似乎無效。 有什么想法嗎?
您可以做兩個替換:
location.href = my_url.replace("?tmpl=component", "").replace("&tmpl=component", "");
或者您可以使用正則表達式:(推薦)
location.href = my_url.replace(/[?&]tmpl=component/, "");
[?&]
將匹配一個'?' 或“&”字符。
您將tmpl
設置為表達式"?tmpl=component" || "&tmpl=component";
"?tmpl=component" || "&tmpl=component";
,該值將始終為"?tmpl=component"
,因為它是or語句中的第一個真實值。
您可以通過多種方式使用正則表達式進行此操作:
my_url.replace(/?tmpl=component|&tmpl=component/, "");
my_url.replace(/[?&]tmpl=component/, "");
最好的是:
var tmpl = (my_url.indexOf("?tmpl=component") > -1)? "?tmpl=component" : "&tmpl=component";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.