1.編寫定義式就運行的函數
fun = function(){   
    alert(
"執行");   
}
();   
//alert(fun);   
  
fun 
= function(){   
    alert(
"執行");   
    
return "返回的是字符串";// 返回的是個字符串   
}
();   
//alert(fun)   


擴展:
if(!Person.extend){//若extend屬性還未存在則執行里面的代碼   
    Person.applay(Person,{   
        extend:
function(){   
            alert(
"定義時執行");   
            
return function(){   
                alert(
"hello");   
            }
   
        }
()// 注意這里加了一對(),表示在new一個Person對象的時候就會立即執行extend后面定義的方法,并且返回里面return的方法給extend屬性,   
           //那么這樣,extend就是一個方法類型的屬性了   
    }
);   
}
   

匿名方法:
//先定義匿名方法,第一個括號對里的,必須要有這個括號對,之后第二個括號對用來執行這個匿名方法,如果這個匿名方法返回的是function,那么可以加第三個括號對。   
(function(){   
    alert(
"aa")   
    
return function(){   
        alert(
"bb");   
    }
   
}
)();// 輸出結果:aa   
  
//帶參數的匿名方法使用   
(function(a,b){   
    alert(a);   
    alert(b);   
    
return function(c){   
        alert(c);   
    }
   
}
)("匿名方法的第一個參數值","匿名方法的第二個參數值")("調用匿名方法執行后返回方法所需要的參數值");   
// 輸出結果:匿名方法的第一個參數值,匿名方法的第二個參數值,調用匿名方法執行后返回方法所需要的參數值