为了账号安全,请及时绑定邮箱和手机立即绑定

在JavaScript开头开始半冒号的目的是什么?

在JavaScript开头开始半冒号的目的是什么?

千巷猫影 2019-12-21 12:36:00
我注意到很多jQuery插件都以;(function(){ /* something in here */ })();我只是想知道开始的分号是什么意思,以及末尾的空括号是什么。
查看完整描述

3 回答

?
慕的地10843

TA贡献1785条经验 获得超8个赞

如果您在某些“错误”脚本之后添加了该脚本,而该“脚本”不能正确地用分号结束其最后一行,则可以使用分号。在这种情况下,可能会合并两个脚本并导致代码无效。例如,如果要将多个脚本合并到单个响应中。

最后的()正在执行该函数。这正在创建一个关闭。可以在此函数的范围内声明私有变量和方法,这些私有变量和方法不能从脚本外部访问。


查看完整回答
反对 回复 2019-12-21
?
慕少森

TA贡献2019条经验 获得超9个赞

这个构造:


(function(){ /* something in here */ })()

用于在Javascript中创建新作用域。


有关功能范围的更多信息,请参见此处。


关于分号,我以前从未见过。我认为串联多个脚本是一种安全措施,因为在某些情况下,分号在文件末尾是可选的。


查看完整回答
反对 回复 2019-12-21
?
qq_花开花谢_0

TA贡献1835条经验 获得超6个赞

很公平。我相信您可以按照自己的风格编写代码。确实,最佳做法是主观的。您的陈述“一旦知道了何时以分号开始的规则...”,便揭示了为什么总是使用分号是最佳实践。因为那样您就不需要知道这些附加规则,并且希望其他人也都知道。如果我们所有人一直都拥有完善的知识,那么我们可以使用二进制编程,但事实并非如此。最佳实践可以为我们提供帮助。当然,是否选择遵循完全取决于您。

查看完整回答
反对 回复 2019-12-21
  • 3 回答
  • 0 关注
  • 612 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信