首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

Javascript中两种形式定义函数的区别

2012-10-25 
Javascript中两种方式定义函数的区别相信两种方式大家都用过,但未必所有人都知道其 区别,内部原理。Js代码

Javascript中两种方式定义函数的区别
相信两种方式大家都用过,但未必所有人都知道其 区别,内部原理。

Js代码

alert(func1); // --> func1源码alert(func2); // --> undefined// 方式1function func1(x,y){// your code}// 方式2var func2 = function(x,y){// your code} 

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


其内部涉及到 执行上下文(Execution context)及 激活对象(Activation object)。想更深了解的请阅读EcmaScript 5文档。


最近发现越来越多的人喜欢使用方式2定义函数,尤其在嵌套函数中。如单纯的定义一个函数个人还是习惯方式1。

热点排行