用;启动所有javascript脚本?

时间:2012-12-02 23:46:55

标签: javascript

使用半冒号启动所有JS文件以解释之前包含的任何错误脚本是不错的做法?或者不要打扰?

由于

;(function(){ /* my script here */ })();

5 个答案:

答案 0 :(得分:2)

麻烦,越来越多的人利用ASI的力量编写无分色的JavaScript。在没有分号的JS世界中,这是“规则”,你在原始表达式之前加上一个分号,比如;();[];//,以及'use strict';之后的分号,并省略它们在其他地方。除了典型的IIFE之外,原始表达式并不常见。 即使你用分号书写JS,那个特定的一个是安全的,并且会比坏的更好。

答案 1 :(得分:1)

不是一个好主意:

  1. 隐藏错误
  2. 东西不会在您的网站上工作,没有明确指示为什么
  3. 没有理由使用错误的脚本。

答案 2 :(得分:1)

如果你将大量代码拆分成几个javascript文件,那么领先的分号实际上非常有用,你可以在某些时候连接起来创建一个生产文件。

这将有助于避免像

这样的结构中的错误
(function() {
}())

如果所有文件都包含在这样的结构中,则填充失败而不使用任何分号,将它们分开。除此之外,这种模式没有多大价值。

答案 3 :(得分:0)

我通常不打扰,但是,如果你想要真正安全,那就去做吧。如果您正在使用其他人的库,我可能会这样做,但是,再次,它是您的选择。

答案 4 :(得分:0)

相反,请使用"use strict";启动所有脚本,在某些浏览器上会检查脚本是否存在容易出错的操作,有趣的是我相信它会产生类似于;关闭任何脚本的效果。来自先前错误脚本的未完成陈述。