自调用函数的初步理解(一)

  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>

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