jQuery ajouter des paramètres à l'URL

J'aime la façon dont jQuery $.ajax() la méthode permet de spécifier l'url de la requête:

{
  url: 'http://domain.com/?param=1',
  data{
    param2: '2'
  }
}

$.ajax() méthode (probablement) appel de $.param() sur des données fournies et éventuellement l'ajouter à l'URL fournie.

Ma question est: est ce type de manipulation d'url à disposition à l'extérieur de dollars.ajax() appel?

Par exemple, je veux ouvrir une fenêtre pop-up, et je voudrais construire l'URL de la même manière que je fais avec $.ajax().

J'ai écrit une fonction qui fait cela, mais j'ai le sentiment que je suis en train de réinventer la roue et la duplication déjà existants en fonction de jQuery:

var prepareUrl = function( url, data )
{
  var params = $.param( data );

  if ( params.length > 0 )
  {
    //url contains a query string
    if ( url.indexOf( '?' ) > -1 )
    {
      //get last char of url
      var lastChar = url.substr( url.length - 1 );

      //Append & to the end of url if required
      if ( lastChar != '&' && lastChar != '?' )
      {
        url += '&';
      }
    }

    else //url doesn't contain a query string
    {
      url += '?';
    }

    url += params;
  }

  return url;
}

merci!

source d'informationauteur Karolis