zoukankan      html  css  js  c++  java
  • javascript之小积累-获取url传参的值

      在项目中经常遇到两个页面传值的情况,我采取的方案是通过url后面加参数,也就是get方式传值。

      这个方式的优点是:传值、获取很方便。

      缺点是:1. 把参数都暴露在浏览器中了,一些敏感信息不建议这样传;

          2. 要是有捣蛋的人把浏览器的地址后缀改改,那样参数就有可能被改了;

          3. 每个浏览器都有个最大的长度限制,其中ie最少,为2048 字符。

      好了,回归正题,当用get方式传值的时候,需要获取一些需要值,有两个方案,有一个是自己写的:

      方案一:

    1  function getQueryString (name) {
    2         var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"),
    3             r = window.location.search.substr(1).match(reg);
    4         if (r != null) {
    5             return unescape(r[2]);
    6         }
    7         return '';
    8  }

      这个方案是用正则匹配name的值。

      方案二:

     1 function getUrlParam(name) {
     2         var url = window.location.herf.search.split('?')[1],
     3             arrs = url.split('&');
     4         for(var i=0; i<arrs.length; i++) {
     5             if(arrs[i].split('=')[0] === name) {
     6                 return arrs[i].split('=')[1];
     7              }
     8         }
     9         return '';
    10 }

      这个方案是通过字符串分割,加上for循环实现。

      总结:原理其实都是对url这个字符串里面的值进行匹配查找,都是对字符串的一些基本操作,所以学好基础,才能建造高楼大厦!

  • 相关阅读:
    LInux常用命令:总结
    SpringBoot声明式事务(转)
    连接linux客户端工具
    查看servlet 3.0文档方法
    通过spring.io找spring历史版本
    归并排序(比希尔还要快)
    快速排序(比希尔排序还要快)
    希尔排序(交换式和移位式)
    插入排序
    选择排序(时间复杂度O(n^2))
  • 原文地址:https://www.cnblogs.com/pijiaxiang/p/5320089.html
Copyright © 2011-2022 走看看