js获取url最后一个斜杠后的数据

最近有一个这样的需求,需要获取url最后一个斜杠后的数据,那么我们可以这样写

  1. var url = window.location.href;
  2. var index = url.lastIndexOf(“\/”);
  3. str = url.substring(index + 1,url.length);
  4. console.log(str);
  5. //输入:https://www.baidu.com/1024.html
  6. // 输出:1024.html

其中变量url的值,你可以赋值为任何你想要拿数据的url,上面代码中的url值为当前页面的url,当然上面的代码,你也可以复制到浏览器控制台来看一下效果。

上面的代码很好理解:

  1. 拿到url的值。
  2. 拿到url最后一个斜杠的位置。
  3. 使用[code]substring方法[/code]提取斜杠后的值,[code]substring方法[/code]接收两个参数,第一个参数为开始的位置,第二个参数为结束的位置(缺省则默认为字符串的结尾)。

说到截取方法,[code]slice方法[/code]和[code]substring方法[/code]都可以实现这样的功能,他们两个的不同点在于:

[code]substring() [/code]不接受负的参数。

最后

除了可以拿到最后一个斜杠后的数据外,我们还可以拿到最后一个斜杠前的数据。

只需要将上述代码改为:

  1. var url = window.location.href;
  2. var index = url.lastIndexOf(“\/”);
  3. str = url.substring(0,index+1);   //此处为变动行
  4. console.log(str);
  5. //输入:https://www.baidu.com/1024.html  
  6. // 输出:https://www.baidu.com

在线预览图

你也可以戳这里进行线上测试:戳我体验