JSHint一直告诉我这是不正确的。
this.x = function( z ) {do stuff}
它报告说在最后一个之前应该有一个分号}
this.x = function( z ) {do stuff;}
并且lint报告在之后应该有分号
this.x = function( z ); {do stuff}
但似乎正在运行,这是正常的还是如果没有严格运行会被忽略的错误之一,哪一个是正确的答案
答案 0 :(得分:0)
Lint并没有要求你在JAAulde指出的结束时加上一个分号。
要求你在结束大括号之后加一个分号:
this.x = function( z ) {
// an instruction with a semicolon;
}; // and this one is for the outer instruction
请注意,缩进对于避免这种混淆非常重要。
是的,它是强制性的,因为它是function expression分号是指当前案例中主要指令的目的:赋值。
答案 1 :(得分:0)
第一个选项是正确的。分号在JS中分隔语句 - 它不会终止它们。这确实因一些自动插入规则而变得复杂,但在这里你没事。第二个也是有效的,并将保留一些过于激进的工具(jsl)抱怨。你的第三个选择是错误的。