我想用javascript分割窗口网址

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我想用javascript分割窗口网址相关的知识,希望对你有一定的参考价值。

我有这样的网址:

http://www.exemple.local/en/node/28

我想只拆分en部分并将其插入另一个div中。我的代码是这样的:

var url = window.location.href;
var urlDomaine = document.location.origin
var splitedUrl = url.split(urlDomaine)[1];
console.log(splitedUrl);
$('.div').text(splitedUrl);

这将打印给我/en/node/28,我不想再分裂它,任何想法?

答案

你不需要用split()或任何其他复杂的方法破解字符串。

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

/en/node/28

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

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

恕我直言,你正在寻找这样的东西(使用Web Api的URL):

var url = 'http://www.exemple.local/en/node/28' 
var myURLObj = new URL(url);


console.log(myURLObj.pathname)   // '/en/node/28'
console.log(myURLObj.pathname.split('/')[1]);   // 'en'
另一答案

以下是如何使用ES6解构功能将您的完整网址分解为各个部分:

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);

以上是关于我想用javascript分割窗口网址的主要内容,如果未能解决你的问题,请参考以下文章

如何从片段内的列表视图打开链接网址?

将 JavaScript 字符串拆分为固定长度的片段

想用JAVA做个固定访问某网站的小程序,我想知道如何判断页面已经加载完毕或刷新完了。

我想用Swing实现单击按钮后能弹出一个新窗口!!这是我的代码!谢谢!

如何在 ViewBinding 中使用片段?

从浏览器共享网址到导航片段