在Javascript

时间:2017-10-20 10:25:21

标签: javascript

在Javascript中,我通过location.pathname获取了部分网址。

示例:/cakephp/public/home/Bob/documents

我想将结果从/home分割到结尾,以便我的结果如下所示:/home/Bob/documents。需要注意的重要一点是结束不固定。 /documents之后可能会更多。

location.pathname.split('/')[4]我得到Bob。但是如何通过split()方法获取/home/Bob/documents/...

3 个答案:

答案 0 :(得分:3)

如果使用'/home'作为split参数,则可以将结果数组中的第二个元素追加到字符串'/home'

'/home' + location.pathname.split('/home')[1]

修改

如果字符串中有多个'/home',您需要像这样处理:

let splitPath = location.pathname.split('/home')

splitPath.splice(0,1)

然后您可以使用以下命令获取已处理的路径:

'/home' + splitPath.join('/home')

答案 1 :(得分:1)

location.pathname.split( '/' 公共')[1]

答案 2 :(得分:1)

此方法负责处理/home字符串在网址中出现多次的情况,例如:

/cakephp/public/home/Bob/documents/pictures/home/bathroom

但同样处理其他路径。

function getUrl() {
    let splitUrl = location.pathname.split('/home'),
        result = '';

    for (let i = 1; i < splitUrl.length; i++) {
        result += '/home' + splitUrl[i];
    }

    return result;
}