是否有必要在javascript类中为构造函数添加semicolcon?

时间:2012-01-15 06:09:24

标签: javascript

我想知道是否需要在构造函数后添加分号。看起来像添加分号或不添加分号,两者都有效。

function test() {
};

function test2() {}

4 个答案:

答案 0 :(得分:1)

简而言之,您不需要 来添加分号。

根据一篇涵盖semi-colon necessity in JavaScript主题的文章,这些都是没有分号的行的有效例子:

var a=1
var b=2
var c=3

// before
if(condition) stuff()

// after
if(condition){
  stuff()
}

// after minification
if(condition){stuff()}

另一方面,这将工作:

a = b + c
(d + e).print()

答案 1 :(得分:0)

在javascript中,如果两行JS语句被一行分隔,则分号存在或不存在无关紧要。如果将JS语句组合在一个缩小的文件中,则必须使用分号,否则会出错。

答案 2 :(得分:0)

JSLint建议   - JSLint希望每个声明都遵循;除了for,function,if,switch,try和while。 JSLint不希望看到不必要的分号或空语句。

在你的情况下。我认为没有必要添加分号

答案 3 :(得分:0)

在您的示例中,分号是必需的。或者,实际上,预期;口译员会忽略它。

但如果你这样做:

var test = function() {
    return;
};

...分号 预期。由于分号插入,它不是需要(如果你把它留出来,你的翻译会“修复”它),但通常建议你使用它。

区别在于function name() {}是复合语句,而var name = function() {};是一个简单的声明语句。

参考:http://javascript.crockford.com/code.html