黑马程序员技术交流社区

标题: 函数声明 和匿名函数的区别 [打印本页]

作者: 苏波    时间: 2012-12-25 21:35
标题: 函数声明 和匿名函数的区别
function add(i1,i2){
return i1+i2;
}
alert (add(5,6));
var f1=function(i1,i2){
return i1+i2;
这两种函数的声明方式有区别吗
调用的语法似乎没什么不一样
}
alert(f1(5.6));
作者: 许庭洲    时间: 2012-12-25 21:43
1.函数的声明是相当于定义了一个函数的名字,即在程序中该名字就代表了一种操作,但声明中并不会说明该函数是怎么产生作用的;
2. 匿名函数就是没有名字的函数。
作者: 王继光    时间: 2012-12-25 23:13
这里我觉得需要弄清楚的是  声明  和 定义的 区别。。
我的理解是: 声明一个函数  是给函数  取名字了 给定返回值  参数 等, 但无 执行语句;
而函数的定义是 除了 声明之外 还给定了 执行的语句。
这个 声明 和定义 在C语言里 分得很清楚, 但我在C#中试了一下,并没有C语言中那么严格


function add(i1,i2){
return i1+i2;
}
alert (add(5,6));
var f1=function(i1,i2){
return i1+i2;
这两种函数的声明方式有区别吗
调用的语法似乎没什么不一样
}
alert(f1(5.6));

你上面这2句话 说得更准确点 我觉得应该叫做  定义了2个函数  不是声明
匿名函数 就是 定义一个 没有名字 的函数

所以,我觉得 匿名函数 和 函数声明 没有可比性吧,不是同一个概念







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2