Comment puis-je obtenir le nom de domaine example.com
à partir de l'ensemble des sous-domaines possibles sub1.example.com
sub2.example.com
sub3.example.com
à l'aide de javascript ...?
var parts = location.hostname.split('.');
var subdomain = parts.shift();
var upperleveldomain = parts.join('.');
Pour obtenir uniquement le domaine de second niveau, vous pouvez utiliser
var sndleveldomain = parts.slice(-2).join('.');
C'est plus rapide
const firstDotIndex = subDomain.indexOf('.');
const domain = subDomain.substring(firstDotIndex + 1);
La solution générique est expliquée ici http://rossscrivener.co.uk/blog/javascript-get-domain-exclude-subdomain Du lien ci-dessus
var domain = (function(){
var i=0,domain=document.domain,p=domain.split('.'),s='_Gd'+(new Date()).getTime();
while(i<(p.length-1) && document.cookie.indexOf(s+'='+s)==-1){
domain = p.slice(-1-(++i)).join('.');
document.cookie = s+"="+s+";domain="+domain+";";
}
document.cookie = s+"=;expires=Thu, 01 Jan 1970 00:00:01 GMT;domain="+domain+";";
return domain;
})();