我见过不同的开发者在javascript的函数后面加分号,也有一些没有。哪种是最佳实践?
function weLikeSemiColons(arg) {
// bunch of code
};
or
function unnecessary(arg) {
// bunch of code
}
我见过不同的开发者在javascript的函数后面加分号,也有一些没有。哪种是最佳实践?
function weLikeSemiColons(arg) {
// bunch of code
};
or
function unnecessary(arg) {
// bunch of code
}
当前回答
函数后面的分号是不必要的 无论是否使用它,都不会在程序中导致错误。 但是,如果您计划精简代码,那么在函数后使用分号是个好主意。 例如,你有如下的代码
//file one
var one=1;
var two=2;
function tryOne(){}
function trytwo(){}
and
//file two
var one=1;
var two=2;
function tryOne(){};
function trytwo(){};
当您缩小两者时,您将得到以下输出
注意,注释只是为了说明
//file one
var one=1;var two=2;function tryOne(){}
function trytwo(){}
and
//file two
var one=1;var two=2;function tryOne(){};function trytwo(){};
其他回答
JS Lint是事实上的惯例,它说函数体后没有分号。参见“分号”部分。
只要保持一致!它们不是必需的,但我个人使用它们,因为大多数缩小技术依赖于分号(例如,Packer)。
当我缩小我的脚本时,我意识到我需要对以等号开始的函数使用分号。如果你定义一个函数为var,是的,你需要使用分号。
需要分号
var x = function(){};
var x = new function(){};
this.x = function(){};
不需要分号
function x(){}
我在函数作为变量声明之后使用它们:
var f = function() { ... };
但不是在经典风格的定义之后:
function f() {
...
}
编辑: 这与ECMAScript 2021 (ES2021)无关,所以请忽略下面的声明。
保留分号是一个很好的做法;在函数花括号结束之后。它们被认为是最佳实践。
总是使用它们的一个好处是如果你想要最小化你的JavaScript。
由于减少了Javascript,有助于减少文件大小。
但至于上面的最佳实践和答案,不建议在函数标记后使用。