zoukankan      html  css  js  c++  java
  • 说一下,查询字符串函数

    每次看《javaScript高级程序设计》,都有意外的收获,哈哈哈,好久没有写东西了,原因就是各种坑啊,一言难尽,不说也罢,言归正传。

    原来项目中遇到了获取location,href中问号后面的内容,自己也封装了一个方法.话不多说,直接上代码.

    /**获取当前页面中url 中? 之后的内容(包括 ?) 返回的是对象*/
    function getLocationStringArgs() {
      var url = location.search; //获取url中"?"符后的字串
      var theRequest = new Object();
      if (url.indexOf("?") != -1) {
        var str = url.substr(1);
        strs = str.split("&");
        for (var i = 0; i < strs.length; i++) {
          theRequest[strs[i].split("=")[0]] = decodeURI(strs[i].split("=")[1]);
        }
      }
      return theRequest;
    }
    

      然后今天看书的时候,突然看到了书上也有一个方法,看着熟悉,也给写下来了,方便对比

          基本的思路就是,把loaction带问号的字符串截取一下,按照‘&’,转换成数组的形式,数组的每一项按照‘=’在分割成对象的key和value,最后返回该对象

      用法简单,就是没有进行编码,需要的,可以把key和value编码转化一下就好了~

    function getLocationStringArgs() {
      var qs = (location.search.length > 0 ? location.search.substring(1) : '');
      args = {};
      items = qs.length ? qs.split('&') : [];
      item = null;
      name = null ; 
      value = null ; 
      i = 0;
      len = items.length;
      for( i = 0 ; i < len ; i++){
        item = items[i].split('=');
        name = decodeURIComponent(item[0]);
        value = decodeURIComponent(item[1]);
        if(name.length){
          args[name] = value;
        }
        return args;
      }
    

      上面一个是自己封装的,下面一个是《javaScript高级程序设计》上的,                                                                                                                                                                                                                                                                                                                       写下来,方便自己以后查看,需要的可以收藏一下~有什么不对的地方,欢迎大家指正批评。

    既然选择了远方,便只顾风雨兼程
  • 相关阅读:
    面试题:表示数值的字符串
    面试题:两个链表的第一个公共节点
    面试题:构建乘积数组
    面试题:二叉搜索树的第K个节点
    面试题:机器人的运动范围
    面试题:矩阵中的路径
    面试题:删除链表中的重复节点
    面试题:环形链表的入口节点
    python学习笔记——捌 ScoketServer
    python学习笔记——捌 scoket 例子
  • 原文地址:https://www.cnblogs.com/wfqjcq/p/7563045.html
Copyright © 2011-2022 走看看