• JS获取URL的参数


    用JS来获取地址栏(URL)里面的参数

    首先,我们要先获取地址栏里的内容。这里就要用到location对象。

      location最有用的BOM对象之一,它提供了与当前窗口中加载的文档有关的信息。并且还将URL解析为独立的片段,我们可以通过不同的属性来访问这些片段。

    location属性:  例如:https://wwww.maidp.com/index.html?value=12&name="jack"&id=5#imhere

    属性名 说明 举例
    protocol 返回页面所使用的协议  常为http或https "https:"
    hostname 返回服务器名称(不带端口号) "www.maidq.com"
    port 返回端口号(如果使用默认端口80则返回空字符串,否则返回端口号) ""
    host 返回服务器名称和端口号 "www.maidq.com"
    search 返回URL中的参数 "?value=12&name="jack"&id=5"
    href 返回当前加载页面的完整的URL。location对象的toString()方法也返回这个值 "https://wwww.maidp.com/index.html?value=12&name="jack"&id=5#imhere"
    pathname 返回URL中的目录、文件名,路径部分 "/fisker/post/0703/window.location.html"
    hash 返回URL中的hash(#号后跟0个或多个字符),如果URL中不包含散列,则返回空字符串 "#imhere"

    下来咱们就来实现用原生JS获取地址栏里面的参数吧。

    方法一:运用字符串方法来获取URL中的参数

    function getURLParm(){
        var parm = location.href;//获取当前页面的URL
        var parm_result = new Object;//用于存储参数
        var start = parm.indexOf("?") != -1 ? parm.indexOf("?")+1 : parm.length;//判断是否有参数
        var end = parm.indexOf("#") != -1 ? parm.indexOf("#") : parm.length;//判断参数内容结束的地方
        parm = parm.substring(start,end);//将参数部分截取出来
        parm_array = parm.split("&");//将每个参数依次存入数组
        for(var i = 0;i < parm_array.length;i++)
        {
            parm_result[parm_array[i].split("=")[0]] = parm_array[i].split("=")[1];//遍历数组,将参数值赋给相应的参数名
        }
        return parm_result;
    }
    console.log(getURLParm());

     方法二:运用正则表达式来匹配URL中的参数

    function getURLParm(){
        var parm = location.search;//获取当前页面的URL中的参数部分
        var parm_result;//用于存储参数
        var re = new RegExp('"(^|&)" + name + "+([^&*])(&|$)" ');//三个子项:第一个:匹配一个&或者开始位置,第二个:匹配参数值;第三个:匹配结束或&
        parm_result = parm.match(re);//match返回匹配结果数组
        return result = parm_result != null ? parm_result[2]:null;
    }
    console.log(getURLParm(name));
  • 相关阅读:
    Stochastic Gradient Descent 随机梯度下降法-R实现
    Gradient Descent 梯度下降法-R实现
    【转】Linux内核中分配4M以上大内存的方法
    【转】在Linux下写一个简单的驱动程序
    【转】内核中的内存申请:kmalloc、vmalloc、kzalloc、kcalloc、get_free_pages
    【转】uboot中的mmc命令
    【原】cmdline传递参数 uboot-->kernel-->fs
    【转】UBOOT——启动内核
    【转】Linux下的磁盘分区方法
    【转】linux下 如何切换到root用户
  • 原文地址:https://www.cnblogs.com/cencenyue/p/7594671.html
Copyright © 2020-2023  润新知