Javascript 获取域名//后的部分URL。。。通过将URL拆分为数组

Javascript 获取域名//后的部分URL。。。通过将URL拆分为数组,javascript,jquery,arrays,Javascript,Jquery,Arrays,我制定了以下代码: var newURL = $(".list-portfolio a").attr("href"), pathArray = newURL.split( '/' ), secondLevelLocation = pathArray[0]; console.log(pathArray); var pathArray = pathArray[3, 4]; pathArray值是[“http:”,“,”www.mikevierwind.nl”,“portf

我制定了以下代码:

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

    var pathArray = pathArray[3, 4];
pathArray值是
[“http:”,“,”www.mikevierwind.nl”,“portfolio”,“ruimzicht.html”]

如何获取此数组的最后2项。我希望结果是portfolio/ruimzicht.html。

你可以试试这个

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

var pathArray = pathArray[3] +'/'+ pathArray[4];

如果没有固定大小或元素数,可以使用数组长度

var path = array[array.length-2]+'/'+array[array.length-1];
如果您只是想要路径,请按照注释中的建议使用纯JS或jQuery

//Plain JS
var path = window.location.pathname;
//jQuery
$(location).attr('pathname'); 

或者可能是这样的

var newURL = $(".list-portfolio a").attr("href"),
pathArray = newURL.split( '/' ),
secondLevelLocation = pathArray.shift();

var pathArray = pathArray.join('/');

您不需要这些,只需要
window.location.pathname

> window.location.pathname
"/questions/11898626/get-items-of-the-array/11898963"
这将使您在未来拥有类似“portfolio/2012/ruimzicht.html”的目录,并在不更改代码的情况下将域更改为“www.mikevierwind.”


如果您当前不在域中(并且无法执行上述操作),则可以使用一行程序按自己的方式执行:

> pathArray.slice(-2).join('/')
"portfolio/ruimzicht.html"
但这并不是像上述那样的未来证明。要使其经得起未来考验,您可以执行以下操作:

> url.split(document.domain)[1].slice(1)
"portfolio/2012/ruimzicht.html"
如果您当前不在域中,因此无法执行
window.location.pathname

操作,则通常会在外部URL上执行此操作

console.log(new URL(document.URL));

您将获得URL的对象

var last2=pathArray[3]+'/'+pathArray[4]
如果您已修复urlvar pathArrayNew=pathArray[3]+“\/”+pathArray[4]?您可以在元素上执行
.prop(“路径名”)
。我的意思是在
a
元素上访问该属性。