Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get parts of URL after domain name //... by splitting URL into array

I have make this code:

var newURL = $(".list-portfolio a").attr("href"),
    pathArray = newURL.split( '/' ),
    secondLevelLocation = pathArray[0];
console.log(pathArray);

    var pathArray = pathArray[3, 4];

The pathArray value is ["http:", "", "www.mikevierwind.nl", "portfolio", "ruimzicht.html"]

How can i get the last 2 items of this array. I want that the results is portfolio/ruimzicht.html.

like image 489
Mike Vierwind Avatar asked Aug 10 '12 09:08

Mike Vierwind


1 Answers

You don't need any of this, you just want window.location.pathname:

> window.location.pathname
"/questions/11898626/get-items-of-the-array/11898963"

This will let you in the future have directories like "portfolio/2012/ruimzicht.html", and change domains to say "www.mikevierwind.???" without changing your code.


If you are not currently on the domain (and can't do the above), you can do it your way with a one-liner:

> pathArray.slice(-2).join('/')
"portfolio/ruimzicht.html"

But this is not future-proof like the above. To make it future-proof, you can do:

> url.split(document.domain)[1].slice(1)
"portfolio/2012/ruimzicht.html"

One would do this generally on foreign URLs when you are not currently on the domain and thus can't do window.location.pathname.

like image 87
ninjagecko Avatar answered Sep 20 '22 18:09

ninjagecko