Skip to content

Instantly share code, notes, and snippets.

@tobsn
Created September 14, 2012 03:29

Revisions

  1. tobsn revised this gist Sep 16, 2012. 1 changed file with 4 additions and 3 deletions.
    7 changes: 4 additions & 3 deletions url.query.js
    Original file line number Diff line number Diff line change
    @@ -1,8 +1,9 @@
    url.query = function( url ) {
    var parsed = this.parse( url, true, false ),
    query = Object.keys( parsed.query ),
    result = {};
    if( !!parsed.query ) {
    for( key in parsed.query ){
    if( query.length > 0 ) {
    query.forEach(function(key){
    if( key.match( /([^\[]+)\[([^\]]+)\]/g ) ) {
    key.replace( /([^\[]+)\[([^\]]+)\]/g, function( $0, $1, $2 ) {
    result[$1] = result[$1] || {};
    @@ -12,7 +13,7 @@ url.query = function( url ) {
    else {
    result[key] = parsed.query[key];
    }
    }
    });
    }
    return result;
    };
  2. tobsn created this gist Sep 14, 2012.
    18 changes: 18 additions & 0 deletions url.query.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,18 @@
    url.query = function( url ) {
    var parsed = this.parse( url, true, false ),
    result = {};
    if( !!parsed.query ) {
    for( key in parsed.query ){
    if( key.match( /([^\[]+)\[([^\]]+)\]/g ) ) {
    key.replace( /([^\[]+)\[([^\]]+)\]/g, function( $0, $1, $2 ) {
    result[$1] = result[$1] || {};
    result[$1][$2] = parsed.query[key];
    });
    }
    else {
    result[key] = parsed.query[key];
    }
    }
    }
    return result;
    };