Posted By

iTony on 02/21/09


Tagged

url javascript parse


Versions (?)

Who likes this?

2 people have marked this snippet as a favorite

LeeRJohnson
jamesming


url parser in javascript


 / Published in: JavaScript
 

  1. function parseURL(url) {
  2. var a = document.createElement('a');
  3. a.href = url;
  4. return {
  5. source: url,
  6. protocol: a.protocol.replace(':',''),
  7. host: a.hostname,
  8. port: a.port,
  9. query: a.search,
  10. params: (function(){
  11. var ret = {},
  12. seg = a.search.replace(/^\?/,'').split('&'),
  13. len = seg.length, i = 0, s;
  14. for (;i<len;i++) {
  15. if (!seg[i]) { continue; }
  16. s = seg[i].split('=');
  17. ret[s[0]] = s[1];
  18. }
  19. return ret;
  20. })(),
  21. file: (a.pathname.match(/\/([^\/?#]+)$/i) || [,''])[1],
  22. hash: a.hash.replace('#',''),
  23. path: a.pathname.replace(/^([^\/])/,'/$1'),
  24. relative: (a.href.match(/tp:\/\/[^\/]+(.+)/) || [,''])[1],
  25. segments: a.pathname.replace(/^\//,'').split('/')
  26. };
  27. }

Report this snippet  

You need to login to post a comment.