[原创]自动获取当前URL所属主域的JS方法(适合多级域名)

工作中要用到,就随手写了个,不是什么难题,分享给有需要的朋友(主要是很久没更新博客了)。

如果有特殊域名,比如“.tj.cn",请将".tj"加到hostExts数组中(因为.cn已经存在了,可以不用加)。

function getPrimaryHost(host) {
            var hostExts = [".com", ".cn", ".net", ".cc", ".sh", ".org"], ext = [], reExt;
            for (var i = 0; i < hostExts.length; i++) {
                if (host.indexOf(hostExts[i]) != -1) {
                    ext[ext.length] = hostExts[i];
                    reExt = new RegExp("\" + hostExts[i]);
                    host = host.replace(reExt, "{" + (ext.length - 1) + "}");
                }
                else
                    break;
            }
            var hostarray = host.split('.');
            host = hostarray[hostarray.length - 1];
            for (var i = 0; i < ext.length; i++) {
                reExt = new RegExp("\{" + i + "\}");
                host = host.replace(reExt, ext[i]);
            }
            return "www." + host;
        };