【问题标题】:; before document ready in jquery [duplicate];在jquery中准备好文档之前[重复]
【发布时间】:2012-01-22 18:15:33
【问题描述】:

可能重复:
What does the leading semicolon in JavaScript libraries do?

我正在阅读 jquery flexslider 源代码,我看到了 ; 在文档就绪调用之前

;(function ($) {...

谁能告诉我为什么我们需要;

【问题讨论】:

  • 您不需要;。这可能是一个错字。

标签: jquery


【解决方案1】:

这只是为了防止之前的任何可能缺少分号的代码行。

如果你知道之前的代码末尾有一个分号,那么这个分号就完全不需要了。

【讨论】:

    【解决方案2】:

    它包含在案例中......

    • 代码与其他代码被分组到同一个文件中,并且

    • 其他代码末尾没有分号。


    例如...

        (function() {
    
           // some bundled plugin
    
        })()  // <--- no semicolon
    
    //  v--- semicolon saved the day    
        ;(function ($) {
    
           // flexslider plugin
    
        })();
    

    如果没有分号,flexslider 插件周围的() 将被解释为函数调用,并会尝试调用前一个函数的返回结果。

    【讨论】:

      【解决方案3】:

      这不是错字。 ; 防止编译/缩小/压缩文件中的 javascript 错误。例如,当几个独立的库/插件被压缩在一起时。

      【讨论】:

        猜你喜欢
        • 2013-06-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-11-18
        • 2014-04-26
        • 2011-05-06
        相关资源
        最近更新 更多