Quindi, un programmatore junior mia squadra oggi ha scritto il seguente pezzo di codice:controllando un valore variabile mediante un operatore o
if(status === ("incomplete" || "unknown"))
che ovviamente non è intenzione di fare ciò che intendeva, che era questo:
if(status === "incomplete" || status === "unknown"))
Ma quello che non riesco a spiegare è perché esattamente il primo snippet di codice non funzionerebbe! O perché si restituisce vero se 'status' è impostato su 'incompleta', ma su false quando è impostato su 'sconosciuto' ...
+1 - eri 9 secondi più veloce con una risposta completamente formata. Wow. – insertusernamehere
"... restituisce il suo primo operando se valuta" vero "..." Io lo cambierei per dire "restituisce il suo primo operando se è vero", la tua parentesi fondamentalmente lo spiega, ma "verità" e "falso" "sono le parole più comunemente usate per esprimere questo concetto. – zzzzBov
Normalmente uso le parole "verità" e "falso", anche se ho scoperto che di solito confondono i nuovi arrivati. Ma sì, è proprio quello che intendo. –