jshint给出“失踪分号”或不基于功能是否无效?

问题描述 投票:1回答:1

我正在使用VSCode jshint。 jshint给人末下面的功能的“失踪分号”警告“}”

void function doSomething(){
    console.log('Hello, World');
}

enter image description here

并添加分号满足jshint:

enter image description here

但之后我删除void,警告消失无分号:

void function doSomething(){
    console.log('Hello, World');
}

enter image description here

这背后有什么逻辑?更一般地,有没有官方的风格指导,如PEP8 in Python Javascript的寻址分号的最佳做法?

javascript jshint
1个回答
2
投票

随着掉毛规则,你必须:

  • 函数声明不需要跟一个分号。
  • 表达式,包括那些包括一个函数式,执行。

通过将void运营商function关键字之前,你强迫它变成表达式中。

既然是在表达方面,你什么都不做,在表达的功能,你作废结果,变得毫无意义。表达不会做的所有事情。它甚至没有创建与存储在它的功能,这就是为什么这个错误的变量:

void function x() { console.log(1) };
x();

更一般地,什么是在JavaScript中分号的最佳实践规则?

一份非常固执己见的主题。

© www.soinside.com 2019 - 2024. All rights reserved.