您的位置:首页 > 文旅 > 美景 > js-匿名函数-特殊符号!-括号表达式-闭包

js-匿名函数-特殊符号!-括号表达式-闭包

2024/12/23 10:16:52 来源:https://blog.csdn.net/m0_67316550/article/details/140004201  浏览:    关键词:js-匿名函数-特殊符号!-括号表达式-闭包

文章目录

  • 1.括号表达式
    • 1.1.提高优先级
    • 1.2.函数参数
    • 1.3.立即执行函数表达式
    • 1.4.执行单个或多个表达式
    • 1.5. 条件表达式
  • 2.匿名函数优点-函数表达式
    • 2.1.匿名函数和声明函数
    • 2.2.闭包
    • 2.3.立即执行函数表达式
    • 2.3.函数表达式小节
  • 3.特殊符号-自执行函数

1.括号表达式

1.1.提高优先级

(1+2)*3 表达式中,()使得其优先级与数学运算中一致,先计算1+2再乘以3得出9。

1.2.函数参数

函数的定义和调用时,函数的形参和实参都要放在小括号中。

1.3.立即执行函数表达式

如下代码,(1,2,3)会被解析为函数的实参,(1,2,3)前面的()表达式会被解析为函数表达式。

(function fun(a,b,c){//…
})(1,2,3)
alert('aaa')
(function fun(a,b,c)
{//…
})(1,2,3)//Uncaught TypeError:alert(...) is not a function

需要注意的是,如果第一个()之前,还存在表达式,如下代码,则一定要在前一表达式结束之后写“;”,否则,会出现错误。这是因为不加“;”时,alert(‘aaa’)会被认为是函数表达式,中间部分被认为是函数参数,而实际上alert(‘aaa’)返回的是undefine,所以会报错。

1.4.执行单个或多个表达式

返回最后一个表达式的值,多个表达式之间需要用逗号“,”分隔开,如下代码;

(1,2+3,4+5,6)//代码会被一次执行,最后将6作为返回值,逗号表达式,以最后一个值作为返回值。

1.5. 条件表达式

if(a+b==c){} //if 和 { 之间的内容需放入括号中

2.匿名函数优点-函数表达式

2.1.匿名函数和声明函数

函数表达式是 JavaScript 中的一个既强大又容易令人困惑的特性。定义函数的方式有两种:一种是函数声明,另一种就是函数表达式。函数声明的语法是这样的。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com