在javascript或jQuery中获取last/之后的内容

在javascript或jQuery中获取last/之后的内容,javascript,jquery,Javascript,Jquery,如何使用javascript或jQuery获取url末尾的数字值?数字可以是多个位置,但始终是完整的,例如1-100 http://localhost/mysite/#portfolio/1 returns 1 http://localhost/mysite/#portfolio/12 return 12 http://localhost/mysite/#portfolio/12556456 returns 12556456 您不需要jQuery。它是一个基本的字符串函数。使用: parseI

如何使用javascript或jQuery获取url末尾的数字值?数字可以是多个位置,但始终是完整的,例如1-100

http://localhost/mysite/#portfolio/1 returns 1
http://localhost/mysite/#portfolio/12 return 12
http://localhost/mysite/#portfolio/12556456 returns 12556456

您不需要jQuery。它是一个基本的字符串函数。使用:

parseInt(url.substr(url.lastIndexOf("/") + 1));
上面将给出一个数字,因为我们使用了parseInt,所以您可以对它进行数字运算

片段

函数getnumurl{ 返回parseInturl.substrurl.lastIndexOf/+1,10; } document.writegetNumhttp://localhost/mysite/portfolio/1; document.writegetNumhttp://localhost/mysite/portfolio/12; document.writegetNumhttp://localhost/mysite/portfolio/12556456; 您可以使用lastIndexOf方法查找/的最后一个索引以及.substr,以从该索引创建子字符串:

url.substr(url.lastIndexOf('/') + 1);

您可以为字符串的match方法提供正则表达式:

var url = "http://localhost/mysite/#portfolio/12556456"
var id = url.match(/\/(\d+)$/)[1];
变量URL=[http://localhost/mysite/portfolio/1, http://localhost/mysite/portfolio/12, http://localhost/mysite/portfolio/12556456] 对于var i=0;i
var str = "http://localhost/mysite/#portfolio/333";
alert(str.split('/').pop())

您应该始终使用parseInt@billyonecan补充。为什么会这样?主要是因为:如果输入字符串以0开头,则基数为8个八进制或10个十进制。具体选择哪个基数取决于实现。ECMAScript 5指定使用10十进制,但并非所有浏览器都支持这一点。因此,在使用parseInt时始终指定基数。-与字符串方法相比,正则表达式的速度较慢。必须提供相同答案3的替代方法: