JS中函数声明与函数表达式的不同
2011-04-25 11:31
344 查看
Js中的函数声明是指下面的形式:
这样的方式来声明一个函数,而函数表达式则是类似表达式那样来声明一个函数,如:
可能很多朋友在看到这两一种写法时会产生疑惑,这两种写法差不多,在应用中貌似也都是可行的,那他们有什么差别呢?
事实上,js的解析器对函数声明与函数表达式并不是一视同仁地对待的。对于函数声明,js解析器会优先读取,确保在所有代码执行之前声明已经被解析,而函数表达式,如同定义其它基本类型的变量一样,只在执行到某一句时也会对其进行解析,所以在实际中,它们还是会有差异的,具体表现在,当使用函数声明的形式来定义函数时,可将调用语句写在函数声明之前,而后者,这样做的话会报错。
function functionName(){ }
这样的方式来声明一个函数,而函数表达式则是类似表达式那样来声明一个函数,如:
var functionName = function(){ }
可能很多朋友在看到这两一种写法时会产生疑惑,这两种写法差不多,在应用中貌似也都是可行的,那他们有什么差别呢?
事实上,js的解析器对函数声明与函数表达式并不是一视同仁地对待的。对于函数声明,js解析器会优先读取,确保在所有代码执行之前声明已经被解析,而函数表达式,如同定义其它基本类型的变量一样,只在执行到某一句时也会对其进行解析,所以在实际中,它们还是会有差异的,具体表现在,当使用函数声明的形式来定义函数时,可将调用语句写在函数声明之前,而后者,这样做的话会报错。
相关文章推荐
- JS中函数声明与函数表达式的不同
- JS中函数声明与函数表达式的不同
- JS中函数声明与函数表达式的不同
- JS中函数声明与函数表达式的不同
- JS中函数声明与函数表达式的不同
- JS中函数声明与函数表达式的不同
- JS中函数声明与函数表达式的不同
- js中函数声明和函数表达式的不同
- JS中函数声明与函数表达式的不同
- JS中函数声明与函数表达式的不同
- js里声明函数有几种方式? var abc = function(x){} 和 function abc(x){} 这两种声明方法有什么不同?
- JS创建函数:函数声明和函数表达式
- js中函数表达式、函数声明和立即执行函数归纳
- js中函数声明与函数表达式
- 一个讨论引发关于js中函数声明,函数表达式,形参与变量声明赋值引发的一些事
- Js中的函数类型及声明和表达式
- 多想一想,JS中函数声明和函数表达式的区别
- JS函数声明与函数表达式区别
- js中函数声明和函数表达式,立即执行函数理解(笔记)
- JS之函数声明与表达式