Funções úteis em JS para extrair dados de URLs

Existem bibliotecas bem legais para extrair dados da URL, mas às vezes você não precisa de todas aquelas informações. Para evitar que seu código fique inchado ou a importação de bibliotecas completas, pode ser interessante usar funções específicas que retornam apenas o dados que você precisa. Tem duas delas que uso com bastante frequencia:

Hash

function getHash(url)
{
  if (typeof url != 'string')
  {
    return null;
  }
  return url.replace(/^.*(#.*)$/, '$1');
}

Parâmetro (GET)

function getParam(url, param)
{
  if (typeof url != 'string' || typeof param != 'string')
  {
    return;
  }
  var regex = new RegExp('[\\?&]' + param + '=' + '(.+?)([&#]|$)', 'i');
  return (value = (regex.exec(window.location.href)||[,null])[1]) 
      ? decodeURIComponent(value) 
      : null;
}
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s