Esiste un equivalente JavaScript dell'istruzione pass di Python che non fa nulla?


93

Sto cercando un equivalente JavaScript di Python:

passistruzione che non esegue la funzione della ...notazione?

Esiste una cosa del genere in JavaScript?


18
Le {}parentesi graffe vuote non sono la stessa cosa?
sagarchalise

@sagarchalise che è vero
ΛRYΛN

nulla volte è usato per questo, come inif (condition) null;
Dima Parzhitsky

Risposte:


143

Python passesiste principalmente perché in Python gli spazi sono importanti all'interno di un blocco. In Javascript, l'equivalente sarebbe non inserire nulla all'interno del blocco, ad es {}.



16

Il passaggio di python è richiesto per i blocchi vuoti.

try:
    # something
except Exception:
    pass

In javascript puoi semplicemente catturare un blocco vuoto

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

4

passPurtroppo Javascript non ha un equivalente in Python .

Ad esempio, non è possibile in javascript fare qualcosa del genere:

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

Invece, dobbiamo fare questo:

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

Il vantaggio dell'utilizzo passdell'istruzione, tra gli altri, è che nel corso del processo di sviluppo possiamo evolvere dall'esempio dell'operatore ternario sopra in questo caso senza doverlo trasformare in ifun'istruzione completa .


Funziona esattamente allo stesso modo in Python, non puoi usarlo passin un'espressione condizionale, dovresti usare un'istruzione condizionale
juanpa.arrivillaga

2

In alcuni casi passpuò essere solo;

Un esempio di vita reale può essere:

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

è uguale a

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

Qui stiamo cercando di passare jal prossimo '1', mentre prima iera già a '1', quindi countfornisce la distanza tra i primi due '1' nella stringa stringa binariabinstrN


1

Ho scoperto che ricevo un errore con le parentesi graffe vuote, invece ci metto un punto e virgola, praticamente la stessa cosa:

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

7
Quale errore ottieni con le parentesi graffe vuote senza punto e virgola all'interno?

1

Se vuoi usare solo l'operatore pass in un operatore ternario o solo in un'istruzione if in JS, puoi farlo:

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

Puoi usare anche usare || ma dovresti sapere che l'operatore || è l'opposto di &&. Quindi se vuoi usare Pass in una funzione o un blocco in generale come facciamo in Python in questo modo:

def Func(): pass

In JS dovresti semplicemente lasciare il blocco vuoto come segue:

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

Alla fine, non ci sono parentesi graffe in Python, quindi questo è il motivo principale per cui abbiamo un passaggio.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.