JavaScript 獲取主機名程式碼

admin發表於2018-12-23

什麼是主機名這裡就不多介紹了,簡單的說就是當前主機的一個標示,比如www.softwhy.com就是一個主機名,更多相關內容這裡就不多介紹了,下面就分享一段程式碼,它能夠獲取當前主機的名稱,程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
function getHost(url){
  var host = null;
  if(typeof url == undefined|| null == url){
    url = window.location.href;
  }
  var regex = /^\w+\:\/\/([^\/]*).*/;
  var match = url.match(regex);
  if(typeof match != "undefined" && null != match) {
    host = match[1];
  }
  return host;
}
console.log(getHost());

程式碼獲取的主機名就是本站的域名,下面對程式碼做一下介紹。

一.程式碼註釋:

(1).function getHost(url){},引數是一個url地址。

(2).var host = "null",宣告一個變數,並賦初值為null。

(3).if(typeof url ==undefined|| null == url){url = window.location.href;},如果沒有傳遞引數,那麼就使用當前url地址。

(4).var regex = /^\w+\:\/\/([^\/]*).*/,此正規表示式能夠匹配主機名,比如http://www.softwhy.com/a/b/index.php,此正規表示式就會匹配"http://www.softwhy.com"。

(5).var match = url.match(regex),進行匹配並返回一個陣列。

(6).if(typeof match != "undefined" && null != match) {host = match[1];},輸入陣列存在,那麼僵host的值賦值為正規表示式第一個字表示式匹配的內容。

二.相關閱讀:

(1).window.location.href參閱location.href屬性一章節。 

(2).match()參閱正規表示式match()函式一章節。

相關文章