我想用JavaScript分割视窗网址

时间:2018-07-27 14:20:39

标签: javascript jquery drupal

我有这样的网址:

en

我只想分割var url = window.location.href; var urlDomaine = document.location.origin var splitedUrl = url.split(urlDomaine)[1]; console.log(splitedUrl); $('.div').text(splitedUrl); 部分并将其插入另一个div中。我的代码是这样的:

/en/node/28

这将向我显示rm -rf /usr/local/var/run/watchman/root-state,我不想再拆分了,有什么想法吗?

3 个答案:

答案 0 :(得分:3)

您不需要使用split()或任何其他复杂方法来修改字符串。

只需使用window.location.pathname。在您指定的网址上运行时,它将返回:

/en/node/28

如果只需要en值,请拆分pathName,然后检索结果数组的第二个元素:

var pathName = window.location.pathName; // = '/en/node/28'
var lang = pathName.split('/')[1]; // = 'en'

答案 1 :(得分:1)

恕我直言,您正在寻找类似的东西(使用Web Api的URL):

for tupl in my_other_list:

    new_column = tupl[0]   # "ColA", "ColB", "ColC"
    col_type = tupl[1]     # "TEXT", "INTEGER", "BLOB"

    c.execute('ALTER TABLE {tn} ADD COLUMN "{cn}" {ct}'.format(
        tn=table_name, cn=new_column, ct=col_type))

答案 2 :(得分:1)

在这里,您可以使用ES6解构功能将完整的url分解为各个部分:

var path = 'http://www.exemple.local/en/node/28'
let [protocol, url, locale, node, id] = path.split('/').filter(chunk => chunk.length);

console.log(protocol);
console.log(url);
console.log(locale);
console.log(node);
console.log(id);