【问题标题】:How to extract a GET parameter from the URL in Javascript? [duplicate]如何从 Javascript 中的 URL 中提取 GET 参数? [复制]
【发布时间】:2010-12-10 01:40:01
【问题描述】:

可能重复:
Use the get parameter of the url in javascript

假设我有这个网址:

s = 'http://mydomain.com/?q=microsoft&p=next'

在这种情况下,如何从字符串中提取“microsoft”? 我知道在 python 中,它会是:

new_s = s[s.find('?q=')+len('?q='):s.find('&',s.find('?q='))]

【问题讨论】:

    标签: javascript string


    【解决方案1】:

    我使用此处提供的 parseUri 库: http://stevenlevithan.com/demo/parseuri/js/

    它可以让你完全按照你的要求去做:

    var uri = 'http://mydomain.com/?q=microsoft&p=next';
    var q = uri.queryKey['q'];
    // q = 'microsoft'
    

    【讨论】:

      【解决方案2】:
      (function(){
      
          var url = 'http://mydomain.com/?q=microsoft&p=next'
          var s = url.search.substring(1).split('&');
      
          if(!s.length) return;
      
          window.GET = {};
      
          for(var i  = 0; i < s.length; i++) {
      
              var parts = s[i].split('=');
      
              GET[unescape(parts[0])] = unescape(parts[1]);
      
          }
      
      }())
      

      认为这会起作用..

      【讨论】:

      • decodeURIComponentescape/unescape 几乎总是一个错误。
      • 另外,这不适用于 url 作为字符串。由于它使用方法搜索,我想url应该是window.location。除了这两个问题之外,似乎工作正常,将库导入此任务肯定是矫枉过正。
      猜你喜欢
      • 2021-01-18
      • 1970-01-01
      • 2012-03-31
      • 2010-10-24
      • 2012-09-17
      • 2021-10-20
      • 2016-04-24
      • 1970-01-01
      • 2010-11-02
      相关资源
      最近更新 更多