自調用函數的初步理解(一)

  1. 自調用函數的初步理解步驟:
//函數的自調用,自調用函數,頁面加載後,這個自調用函數就執行完了,聲明的時候直接調用了,不能再調用了 ,分號一定要加上
//	分步驟理解: 
1) 函數的普通調用方式:
	function f1(){
		console.log("函數");
	}; 
	f1(); //函數調用
	
2)	延伸——可以換種寫法:
	(function f1(){
		 console.log("自調用函數222sss2");
	})();
	
3)  延伸——再精簡一下,可以去掉方法名:
	(function(){
		 console.log("自調用函數222sss2");
	})();
	
4)	延伸——方法有實參和形參,都可以傳參數:
	(function(形參){
      console.log("自調用函數");
       var num=10; // num 是局部變量 
     })(實參);
     
//舉例,window是頂級對象,加上之後,局部對象變成了全局對象,外部調用的時候,window 可以省略掉
	(function(win){
       console.log("自調用函數222sss2");
       var num=10;
       win.number=10;
   })(window); 
   // console.log(num); //此種情況不能訪問報錯,num是局部變量
   console.log(number); // 輸出10
   console.log(window.number); // 輸出10
5)  延伸——window是頂級對象,直接在函數使用,不加參數也是可以的;
  (function(){
       console.log("自調用函數222sss2");
       var num=10;
       window.number=10;
   })(); 
   // console.log(num); //此種情況不能訪問報錯,num是局部變量
   console.log(number);   
  1. 舉例使用:
 //自調用函數 加構造函數寫一個創建隨機數的例子 
  <script>
   //自調用函數 加構造函數寫一個創建隨機數的例子 
         (function(win){ 
           //產生隨機數的 構造函數
          function Random(min,max){
              this.min = min;
              this.max=max;
          }; 
          //通過原型添加方法
          Random.prototype.getRandom=function(min,max){
              return Math.floor(Math.random()*(this.max-this.min)+this.min);
          };
          //把Random 對象暴露給頂級對象 window,這樣外部就可以使用 Random 這個對象;
          win.Random = Random;  

       })(window);   

       var random = new Random(0,10); //產生0-10的隨機數,包含0,不包含10

       console.log(random.getRandom());
  </script>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章