1.1函式基本形式(全域性變數)

     function checkName(){    //驗證姓名
    } 
     function checkEmail(){  //驗證郵箱
    }
     function checkPassword(){ //驗證密碼
    }

1.2函式的另一種形式 (全域性變數)

   var checkName =function(){   //驗證姓名
   }
   var checkEmail = function(){  //驗證郵箱
   }
   var checkPassword=function(){ //驗證密碼
   } 

上面聲明瞭多個函式也就是多個全域性變數,當多人協作時,如果別人也定義了同樣的方法或者自己定義了很多方法,就容易存在被覆蓋的風險,且這種相互覆蓋的問題是不容易察覺的。所以可以將它們放在一個變數裡儲存,這樣就可以減少覆蓋或被覆蓋的風險,當然一旦被覆蓋所有的功能都會失效,但這種現象很明顯也容易察覺。

1.3 用物件收編變數:
可以建立一個檢測物件,然後把函式方法放在裡面:

   var CheckObject={
     checkName: function(){  //驗證姓名
     },
     checkEmail:function(){  //驗證郵箱
     },
     checkPassword:function(){ //驗證密碼
     }
}  

這裡我們將所有函式作為CheckObject 物件的方法,這樣我們就只有一個物件,而我們要想使用它們也很簡單,比如檢測姓名CheckObejct.checkName(),只是在我們原來使用的函式式前面多了個物件名稱。

1.4 物件的另一種形式:
在JS中函式也是一種物件,所以可以有如下寫法:

 var CheckObject = function(){};
 CheckObject.checkName = function(){
    //驗證姓名
}
 CheckObject.checkEmail = function(){
   //驗證郵箱
}
 CheckObject.checkPassword=function(){
  //驗證密碼
} 

使用和前面的方式是一樣的,比如CheckObject.checkName(),但這個物件類在用new 關鍵字建立新的物件時,新建立的物件是不能繼承這些方法的。

1.5 真假物件
如果想簡單得複製物件,可以將這些方法放在一個函式物件中:

  var CheckObject = function(){
  return {
     checkName:function(){
     //驗證姓名
     },
     checkEmail:function(){
     //驗證郵箱
     },
     checkPassword:function(){
      //驗證密碼
     }
   }
}

var a = CheckObject();
a.checkEmail();

.