Verwende location.host
und schneide Subdomains und die TLD ab:
update : Wie @demix gezeigt hat, schlägt dies bei Domains mit zwei und drei Buchstaben fehl. Es funktioniert auch nicht für Domains wie aero
, jobs
und Dutzende andere.
Der einzige Weg, um gültige TLDs im Voraus zu kennen, ist hier eine geeignetere Funktion:
%Vor% Ich hoffe, ich habe zu viele Fälle nicht übersehen. Dies sollte im Objekt location
verfügbar sein: (
Testfälle: Ссылка
Eine Liste der TLDs finden Sie hier: Ссылка
Ich habe nach etwas gesucht, das in den meisten Fällen funktioniert, ohne die TLD-Liste verwalten zu müssen (und deren Größe zu überspringen!). Es scheint mir, dass Sie dies ziemlich genau tun können, indem Sie stattdessen die Second-Level-Domain nach allgemeinen suchen:
%Vor%Geige & amp; Tests @ Ссылка
Kritiken / Gedanken willkommen.
Ohne eine vollständige Liste der TLDs zu haben (was sehr lange dauern würde). Wenn Sie nur den Domain-Namen von der aktuellen Seite benötigen, können Sie meine Technik verwenden (mit Cookies, um die Root-Domain zu finden)
Javascript - Domain-Namen ohne Subdomain abholen
Um die Erweiterung zu entfernen, können Sie das erste Element von str.split('.')[0]
Ich musste dies tun und etwas einfaches aufpeitschen, was meinen Anwendungsfall ausmachte
%Vor%hauptsächlich wollte ich nur alle Subdomains entfernen, leider ist dies nicht 100% für einige der neuen TLDs, aber es funktioniert ziemlich gut, und Sie können immer die Regex hinzufügen.
Mit Hilfe der obigen Codebeispiele anderer Freunde habe ich eine Funktion erstellt, die nur den Domainnamen zurückgibt und wenn es keine gültige Domain ist, zum Beispiel die TLD fehlt, dann fügt sie ".com" gemäß meiner Anforderung an.
%Vor%Tags und Links javascript dns