函数声明与函数表达式
来源:互联网 发布:哪些犯罪知乎 编辑:程序博客网 时间:2024/04/26 15:31
js中,定义函数常用的两种方法:函数声明和函数表达式。
函数声明:
function sum(item1,item2){ //代码块}
函数表达式:
var sum = function(item1,item2){ //代码块};
函数声明和函数表达式存在的一个最大的区别就是:函数声明会被提升,即js引擎会将函数声明提升到顶部。如下代码:
console.log(sum(1,2));function sum(item1,item2){ return item1+item2;}
上述代码结果输出为3,虽然还没有执行到sum函数,但是因为在js中,解析器会先读取函数声明(即函数声明提升),并使其在执行任何代码之前可用。
但是,如下代码会在运行期间产生错误:
console.log(sum(1,2));var sum = function(item1,item2){ return item1+item2;}
因为执行到函数所在语句之前,变量sum中不会保存有对函数的引用。
补充:变量声明
同样的,和函数声明提升一样,在js中还存在变量声明提升。
var a = 1;function printA(){ console.log(a); var a = "这是函数里的A";}printA(); //undefined
因为在函数printA中,存在变量a会被提升到最前面。
0 0
- 函数声明与函数表达式
- 函数声明与函数表达式
- 函数声明与函数表达式
- 函数声明与函数表达式
- 函数声明与函数表达式
- 函数声明与函数表达式
- 函数声明与函数表达式
- javaScript中的函数声明提升---函数声明与函数表达式
- javascript中函数声明与函数表达式
- JavaScript: 函数声明与函数表达式
- 函数声明与函数表达式基础介绍
- 函数声明与函数表达式的区别
- JS中函数声明与函数表达式
- javascript函数声明与函数表达式
- 函数声明与函数表达式的区别
- JS函数声明与函数表达式区别
- 函数声明与函数表达式的区别
- 函数声明与函数表达式的区别
- 设计模式实现——创建者模式
- c++和java区别之string字符串
- 32位保护模式学习小结(3)---任务切换
- 关于程序异常终止的数据保存
- android 属性
- 函数声明与函数表达式
- Visual Basic中的素数筛选
- 【华为OJ】公共字符字串计算
- TCP/IP连接状态变迁图CLOSE_WAIT
- POJ 2135 Farm Tour
- javaWeb SSH 设置后台自启线程,一般用于系统的自主更新
- Scala Cookbook翻译 Chapter 1.Strings 第一部分
- javascript倒计时
- Python——我的第一个Python程序运行py文件