如何使用JavaScript查找URL域

时间:2014-03-09 09:46:51

标签: javascript

我正在研究如何找到网址的域名,感谢my previous question,我得到了这个答案:

var domain = (location.host)
        var arr=domain.split(".")
        extension=arr[arr.length-1]

        if(extension=="cnn")
            alert("true");

但是,我有两个问题:

  • 一切正常,直到您遇到扩展程序为co.uk的网站。
  • 有没有办法从一开始就计算.而不是从最后开始计算?

例如,对于网站www.cnn.com,它会从www开始计算,而不是从com开始计算。

2 个答案:

答案 0 :(得分:0)

好的,这是编辑,让你了解它是如何工作的。

说,您的网站是“www.cnn.co.uk”。如果你理解数组,这一行将返回由'。'

分隔的4个元素的数组
var arr=domain.split(".")

即。 [www,cnn,co,uk];

现在,你想从这个阵列中得到什么元素真的很棒。如果您知道元素名称,并且想要检索cnn,则可以执行

`extension = arr[1];`

您还可以迭代数组以获取每个元素。


extension = arr[0];

它将返回www。

答案 1 :(得分:-1)

使用此功能:

function GetDomainName() {
    if (location.host.split('.')[0] == 'www') {
        return location.host.split('.')[1];
    } else {
        return location.host.split('.')[0];
    }
}

这样称呼:

var domainName=GetDomainName();

但请记住,这不适用于像

这样的子域
programmers.stackexchange.com

演示: http://jsfiddle.net/j7VP6/