上午在做一个小项目时,需要从后台取到网页的路径并在前台用JS代码组合成网址再跳转。难度不是很大,主要是需要用到 js 代码获取当前网址的主域名,那么这篇博文,飞鸟慕鱼博客就来和大家说一说,js获取当前网站域名的方法。
js 匹配网址中主域名的方法
在 js 中,可以使用 split() 方法利用字符 '/',来分割一个网址,并取出它主域名的部分
js代码:
var url = "https://www.feiniaomy.com/post/522.html";
//以“/”进行分割,urlstr 会是一个数组
var urlstr = url.split("/");
var urls = '';
if (urlstr[2]) {
// urlstr[0] 为 http 协议部份
// urlstr[2] 为 网址域名部份
urls = urlstr[0]+'//'+urlstr[2];
}
alert(urls);
弹出结果:https://www.feiniaomy.com
PS:此方法,只适合处理带有 http 或 https 协议的完整网址,如果输入的是一个项级域名,没有 http 协议的网址,就需要变换一下它的取值方法。
js 获取当前网站域名的方法
上面的代码中,js可以通过一个完整的网址来提取出主域名。如果想提取当前网页地址的主域名,可以使用 window.location.href 来获取当前网页的完整URL地址。
js代码:
//获取当前网页的完整地址
var url = window.location.href;
var urlstr = url.split("/"); //以“/”进行分割
var urls = '';
if (urlstr[2]) {
urls = urlstr[0]+'//'+urlstr[2];
}
alert(urls);
为了使用方法,可以将此代码自定义成一个函数
函数代码:
function hosturl(url){
var urlstr = url.split("/"); //以“/”进行分割
var urls = '';
if (urlstr[2]) {
urls = urlstr[0] + '//' + urlstr[2];
}
return urls;
}
调用方式:
url = hosturl('要提取域名的网址");