我有这个网址:
http://test.com/en/country/city
我使用 lastIndexOf 获取“城市”但我想获得“国家”
window.location.href.substring(window.location.href.lastIndexOf('/') + 1);
是否可以使用 lasIndexOf ,或者此案例还有其他功能?
提前谢谢!
答案 0 :(得分:3)
您可以按/
分割您的网址并获取所需的元素(首先删除http://
部分):
var str = 'http://test.com/en/country/city';
str = str.replace('http://', '');
var parts = str.split('/');
console.log(parts);
alert(parts[2]+', '+parts[3]);

答案 1 :(得分:1)
尝试:
var fragment = "http://test.com/en/country/city";
var array_fragment = fragment.split('/');
var city = array_fragment[array_fragment.length - 1]
var country = array_fragment[array_fragment.length - 2]
alert(country)
答案 2 :(得分:1)
你可以这样做:
var url = "http://test.com/en/country/city"
var urlParts = url.split("/")
urlParts[urlParts.length - 1] (which would equal to "city")
urlParts[urlParts.length - 2] (which would equal to "country")
基本上在每次出现"/"
时拆分并从返回的数组中选择正确的项目。
答案 3 :(得分:1)
使用split函数获取倒数第二个值。
试试这个
var url='http://test.com/en/country/city';
var splitArray=url.split('/');
alert(splitArray[splitArray.length-2]);
答案 4 :(得分:1)
这与lastIndexOf有效吗?
是的,有可能。
让我们说
x="http://test.com/en/country/city"
我们获得了最后/
y=x.lastIndexOf("/");//26
我们获得了第二个/
z=x.lastIndexOf("/",y-1);//18
要提取国家/地区,我们现在使用substring
,如下所示
x.substring(z+1,y)//country
答案 5 :(得分:0)
尝试这样的事情。
var url = window.location.href;
var urlArray = url.split("/");
urlArray[urlArray.length-1] //City
urlArray[urlArray.length-2] //Country