获取URL地址最后的id值

本文最后更新于:1 年前

有时候项目常常要获取id,有的id就在url的最后面,那么问题来了,怎么才能拿到这个id值呢,经过一番思考之后就有了下面这个方法。

获取方法和思路

代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function GetUrlParam(paraName) {
var url = document.location.toString();
var arrObj = url.split("?");
    if (arrObj.length > 1) {
      var arrPara = arrObj[1].split("&");
      var arr;
      for (var i = 0; i < arrPara.length; i++) {
        arr = arrPara[i].split("=");
        if (arr != null && arr[0] == paraName) {
          return arr[1];
        }
      }
      return "";
    }
    else {
      return "";
    }
}

思路:

这个方法通过传入一个参数(通常是”id”)来获取这个参数等号后面的值。步骤是

  1. 先拿到当前页面的 URL并且转成字符串的形式,
  2. 然后用”?”对这个URL字符串进行分割,将分割得到的字符串数组存入一个变量,
  3. 接着再对这个数组中的多个参数进行分割(如果有多个参数的话,没有就返回原值),
  4. 最后就是循环这个经过处理后的数组,找到符合传入参数的那一项数组元素,并将参数后面的值返回。

使用方法是

1
var id = GetUrlParam("id");

总结

这个方法的适用性并不是很大,通常适合http://localhost:5500/item.html?id=01或者是http://localhost:5500/item.html?list=3&id=01这样的链接,如果内容再复杂一点或格式差距较大的话就需要另外想办法实现。