您的位置:首页> 前端教程> JS教程
文章导航

JavaScript 匿名函数

2018-10-22 00:25| 作者: admin| 查看: 1715| 评论: 0|来自: 蚂蚁部落

JavaScript函数可以分为具名函数与匿名函数。

一.具名函数创建:

具名函数通过函数声明方式创建,函数声明必须遵守严格的语法规范。

代码实例如下:

[JavaScript] 纯文本查看 复制代码
function func(webName){
  console.log(webName);
}

上面代码声明一个具名函数,函数声明必须具有如下要素,否则报错:

(1).起始位置的function关键字。

(2).function关键字后面用空格分隔(可以一个或者多个),然后跟着函数名称。

(3).函数名称后面跟着小括号(),名称与小括号之间可以有一个或者多个空格。

(4).小括号中可以定义参数,参数与参数之间用逗号分隔。

二.匿名函数的创建:

匿名函数就是没有名字函数,它的使用方式更为灵活。

可以通过表达式方式创建匿名函数。

代码实例如下:

[JavaScript] 纯文本查看 复制代码
let func=function(webName){
  console.log(webName);
}

等号右侧是一个匿名函数表达式,此函数没有名字。

匿名函数创建之后,将其引用赋值给变量func,那么就可以利用变量来使用此函数。

代码实例如下:

[JavaScript] 纯文本查看 复制代码运行代码
let func=function(webName){
  console.log(webName);
}
func("蚂蚁部落");

代码运行效果截图如下:

a:3:{s:3:\"pic\";s:43:\"portal/201810/22/002723mi6xuiztueewcu6u.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

匿名函数必须处于表达式环境中,也就是作为一个运算符的运算数。

不能让一个匿名函数孤零零的存在,代码如下:

[JavaScript] 纯文本查看 复制代码
function(webName){
  console.log(webName);
}

上面匿名函数孤零零存在,没有办法使用它,并且代码也会报错。

大家知道,运算数会首先对自己求值,并返回此值,所以匿名函数才会有多种多样的调用方式。

简单举例如下:

[JavaScript] 纯文本查看 复制代码
// !运算符
!function(webName){
  console.log(webName);
}("蚂蚁部落")
// +运算符
+function(webName){
  console.log(webName);
}("蚂蚁部落")
// 分组运算符
(function(webName){
  console.log(webName);
})("蚂蚁部落")

上面三个方式都可以实现匿名函数立即执行效果。

特别说明:箭头函数全都是匿名函数,具体参阅JavaScript 箭头函数一章节。

三.具名函数与匿名函数的区别:

当然匿名函数的创建使用方式有多种,比如上面距离的三种自执行方式。

下面仅以最常用的方式作为例子,代码实例如下:

[JavaScript] 纯文本查看 复制代码
function func(){}
let func = function(){}

函数声明具有前置效果,但是匿名函数没有。

因为上面的匿名函数声明本质就是声明一个变量,然后赋值一个函数对象。

关于声明前置可以参阅JavaScript 变量与函数声明前置一章节。

2

鲜花

握手

雷人

路过

鸡蛋

刚表态过的朋友 (2 人)

最新评论

返回顶部