c语言中娜写语句后不写分号,为什么我应该在javascript中的每个函数后使用分号?...

本文解析了JavaScript中FunctionDeclaration与FunctionExpression的区别,强调了在函数声明中分号的必要性,并提到了函数提升的概念。通过实例说明了分号在避免意外执行上的关键作用,推荐了命名函数表达式的讲解资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

e674ab0582f83f944008115f29882d40.png

冉冉说

分号后函数的声明是没有必要的。a的语法FunctionDeclaration在规范中描述为:function Identifier ( FormalParameterListopt ) { FunctionBody }语法上没有分号,但可能想知道为什么?分号用于将语句彼此分开,而a FunctionDeclaration不是声明。FunctionDeclarations在代码进入执行之前进行评估,提升是用于解释此行为的常用词。术语“函数声明”和“函数声明”经常被错误地互换使用,因为ECMAScript规范中没有描述函数声明,但是有些实现在语法中包含一个函数声明,特别是Mozilla-但是这个是非标准的。但是,在您使用的地方始终建议使用分号FunctionExpressions,例如:var myFn = function () {

  //...};(function () {

  //...})();如果在上例中的第一个函数之后省略分号,则会得到完全不希望的结果:var myFn = function () {

  alert("Surprise!");} // 

  //...})();第一个函数将立即执行,因为围绕第二个函数的括号将被解释为Arguments函数调用。推荐讲座:命名的函数表达式揭秘(伟大的文章)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值