Javascript中函数定义方法比较详解编程语言

定义函数的方法主要包括3种:function 语句、函数直接量、Function()构造函数(代码格式比较如下)

                   //使用function语句编织函数  
                      function f(x){ 
			 return x; 
		 } 
		 //使用函数直接量直接生成函数  
		 var f = function(x){ 
			 return x; 
		 } 
		 //使用Function()构造函数克隆函数  
		 var f = new Function("x","return x;");

现在比较前两种定义函数方式的区别:

方式1 是典型的函数声明

方式2 是函数表达式

 

其主要区别在于:

1、函数声明需显示的指定函数名,这里是f  函数表达式则使用匿名函数

2、方式1在代码执行之前(解释器)被加载到作用域中,方式2则需在代码执行时(运行期)加载

 

下面一个例子说明他们的区别

                  alert(f1);      //f1源码 
		alert(f2);      //undefined 
		 
		function f1(){ 
			var i = 10; 
		} 
		var f2 = function(){ 
			var j = 10; 
		} 
		 
		//如果放在函数声明之后  
		alert(f1);          //f1源码  
		alert(f2);          //f2源码  

可以看到,第一次弹出的是f1源码,第二次却是undefined。即采用方式1定义函数,可以在该函数代码之上使用它,采用方式2定义函数则不能在其定义前使用,只能在其定义后使用。

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/14546.html

(0)
上一篇 2021年7月19日 16:55
下一篇 2021年7月19日 16:55

相关推荐

发表回复

登录后才能评论