Existe um equivalente em JavaScript da instrução pass do Python que não faz nada?

93

Estou procurando um equivalente em JavaScript do Python:

passdeclaração que não executa a função da ...notação?

Existe tal coisa em JavaScript?

user781486
fonte
18
{}Chaves vazias não são a mesma coisa?
sagarchalise
@sagarchalise isso é verdade
ΛRYΛN
nullàs vezes é usado para isso, como emif (condition) null;
Dima Parzhitsky

Respostas:

143

O Python passexiste principalmente porque no Python o espaço em branco é importante dentro de um bloco. Em Javascript, o equivalente seria colocar nada dentro do bloco, ou seja {}.

jakevdp
fonte
32

usar //passcomo pythonpass

gostar:

if(condition){
   //pass
}

Isso é equivalente a deixar o bloco sem nada nele, mas é bom por motivos de legibilidade.

referência de https://eslint.org/docs/rules/no-empty

Sírius
fonte
16

a passagem de python é necessária para blocos vazios.

try:
    # something
except Exception:
    pass

Em javascript você pode simplesmente pegar um bloco vazio

try {
    // some code
} catch (e) {
    // This here can be empty
}
Um mito
fonte
4

Javascript não tem um passequivalente em Python , infelizmente.

Por exemplo, não é possível em javascript fazer algo assim:

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

Em vez disso, devemos fazer isso:

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

A vantagem de usar a passinstrução, entre outras, é que, no decorrer do processo de desenvolvimento, podemos evoluir do exemplo do operador ternário acima, neste caso, sem ter que transformá-lo em uma ifinstrução completa .

danb4r
fonte
Isso funciona exatamente da mesma maneira em Python, você não pode usar passem uma expressão condicional, você teria que usar uma declaração condicional
juanpa.arrivillaga
2

Em alguns casos, passpode ser apenas;

Um exemplo da vida real pode ser:

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

é o mesmo que

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

Aqui estamos tentando mover jpara o próximo '1', enquanto ijá estava em um '1' antes dele, portanto, countdá a distância entre os dois primeiros '1s na string bináriabinstrN

Manohar Reddy Poreddy
fonte
1

Descobri que recebo um erro com colchetes vazios, em vez disso, coloco um ponto-e-vírgula lá, basicamente a mesma coisa:

try { //something; } catch (err) { ; }
A IA Original
fonte
7
Que erro você obtém com colchetes vazios sem ponto-e-vírgula dentro?
1

Se você deseja usar apenas o operador pass em um operador ternário ou apenas em uma instrução if em JS, você pode fazer o seguinte:

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

Você pode usar também usar || operador, mas você deve saber que o || é o oposto de &&. Então, se você quiser usar o Pass em uma função ou bloco em geral, como fazemos no Python, desta forma:

def Func(): pass

Em JS você deve apenas deixar o bloco vazio assim:

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

No final das contas, não há chaves no Python, então essa é a principal razão pela qual temos um passe.

Med Ezzitouni
fonte