我有这样的网址:
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);