前端获取shopId是怎么获取的

来源:4-4 店铺信息编辑之前端实现

视线模糊

2021-06-29 06:10:14

function getQueryString(name) {

var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");

var r = window.location.search.substr(1).match(reg);

if (r != null) {

return decodeURIComponent(r[2]);

}

return '';

}

这个是怎么获取shopId这个属性的啊?能不能举例分析一下

写回答

1回答

好帮手慕小尤

2021-06-29

同学你好。首先调用getQueryString方法,将“shopId”传过去。这其实就是指定了需要解析的key值:

http://img.mukewang.com/climg/5d006d8a0001f21206130136.jpg

    ​进入这个方法后,reg拼出的结果是“(^|&)shopId=([^&]*)(&|$)”,然后执行下一行代码,

http://img.mukewang.com/climg/5d006e500001e6ef07760261.jpg

   其中​location是包含了相关的url的信息,它是windown的一部分。而search是一个可以查询的属性,可以查询?之后的部分。substr(1)是防止空字符串。match是匹配函数。所以变量 r 就是将浏览器地址栏中的url的?后接的部分去匹配“shopId=”

    如果匹配到了,也就是r不为空,则调用decodeURIComponent()方法,将其转码返回。

祝学习愉快!

0

0 学习 · 8263 问题

查看课程