是否有与python pass语句等效的JavaScript,它什么也不做?


Answers:


138

Pythonpass之所以存在,主要是因为在Python中,空格在一个块内很重要。在Javascript中,等效项是将任何内容都放在块中,即{}



16

空块需要python的通过

try:
    # something
except Exception:
    pass

在javascript中,您可以简单地捕获一个空块

try {
    // some code
} catch (e) {
    // This here can be empty
}

3

pass不幸的是,JavaScript没有等效的python 。

例如,在javascript中无法执行以下操作:

process.env.DEV ? console.log('Connected..') : pass

相反,我们必须这样做:

if (process.env.DEV) console.log('Connected..')

使用该pass语句的好处之一是,在开发过程中,在这种情况下,我们可以从上述三元运算符示例中演变而不必将其转换为完整的if语句。


这在Python中的工作方式完全相同,您不能pass在条件表达式中使用,而必须使用条件语句
juanpa.arrivillaga

1

我发现空括号时出现错误,而是在其中放了分号,基本上是一样的:

try { //something; } catch (err) { ; }

7
空括号内没有分号,您会遇到什么错误?

1

在某些情况下,pass可以只是;

一个真实的例子可以是:

var j;
for (j = i + 1; j < binstrN.length && binstrN[j] != 1; j++) {
}
let count = j - i;

与...相同

var j;
for (j = i + 1; j < binstrN.length && binstrN[j] != 1; j++);
let count = j - i;

在这里,我们试图移至j下一个“ 1”,而i其之前已经是“ 1”,因此count给出了字符串二进制字符串中前两个“ 1”之间的距离binstrN


0

如果只想在三元运算符或JS的if语句中使用pass运算符,则可以执行以下操作:

a === true && console.log('okay')

您也可以使用|| 运算符,但您应该知道|| 与&&相反。然后,如果您想像通常在Python中那样在函数或块中一般使用Pass,如下所示:

def Func(): pass

在JS中,您应该将代码块留空,如下所示:

 if(){ 
    console.log('ok')
    }else{}

最后,Python中没有括号,所以这是我们通过的主要原因。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.