是否可以使用javascript获取站点名称?

是否可以使用javascript获取站点名称?,javascript,Javascript,我想知道是否可以使用javascript获取站点名称 例如,如果我想获取网站的主URL,我将使用 window.location.hostname 脚本将返回stackoverflow.com 现在,如果我希望脚本只返回网站的名称,在本例中是stackoverflow,该怎么办?stackoverflow.com->stackoverflow;facebook.com->facebook等等,换句话说,我想从url中删除第一个域 谢谢 你可以做: window.location.hostnam

我想知道是否可以使用javascript获取站点名称

例如,如果我想获取网站的主URL,我将使用

window.location.hostname
脚本将返回stackoverflow.com

现在,如果我希望脚本只返回网站的名称,在本例中是stackoverflow,该怎么办?stackoverflow.com->stackoverflow;facebook.com->facebook等等,换句话说,我想从url中删除第一个域

谢谢

你可以做:

window.location.hostname.split('.').slice(0,-1).join('.')
将主机名拆分为一个数组

["stackoverflow", "com"]
移除数组中的最后一个元素

["stackoverflow"]
然后将数组重新连接在一起


我是这样做的,如果你有像“dev.yoursite.com”这样的url,你会得到“dev.yoursite”

我会使用regexp。但这有点难看:

location.hostname.replace(/^(www.|)([\w]+)(\..+|)/g, "$2")

对于提出问题的方式,看起来您正试图将其归档到一行javascript函数中。 那么我担心,没有一个简单的方法可以做到这一点

许多例子都建议按点拆分,但这样只适用于具有一级和二级域名的主机名

当主机名变得更复杂时。。这些解决方案通常会失败。 前

子域mail.example.com composited domains.co.uk 等等 我可以给你几个例子来阅读,并找出哪一个适合你的需要

很好的解释 简言之。。 如果你想要一条简单的线,简单的做和神奇的线来做到这一点。。。 答案是否定的,不可能只有一个解决方案在所有情况下都有效

但是,如果你想学习,尝试,阅读并告知它。。。那么是的。。绝对地 这更复杂,但可以做到


因此,请提供一个更详细的问题,包括示例和您迄今为止试图解决的问题,我们很乐意为您提供更详细的答案。

像www.ebay.co.uk这样的场景如何?然后你回到www.ebay.coThank谢谢大家,尤其是Dave,他的解决方案很有效!你想删除第一个域名还是想全部删除domain.co.uk?谢谢你发布的链接。不管怎么说,这个问题只是出于好奇。我将看一看您链接的指南和示例。谢谢你,再见!我很高兴这些信息和链接能帮助你更多地了解它,或者至少能更好地理解它的工作原理。