mi piace tabelle di ricerca:
if ({finished:1, uploading:1}[Progress.bar.status]){
//code here
}
questo utilizza un oggetto di codice di due o più opzioni, e anche passi laterali citando ogni scelta. è anche molto veloce poiché l'oggetto può essere memorizzato nella cache e non vi è alcuna logica di confronto o metodi da richiamare, solo un accesso veloce alla proprietà che guida il flusso ...
notare che in alcuni casi, è possibile utilizzare Object.create(null)
e quindi unire/estendere tale oggetto vuoto con le opzioni, se è assolutamente necessario evitare i falsi positivi per "hasOwnProperty", "valueOf", "toString", "toLocaleString", "costruttore" e alcune estensioni double-underscore. spesso non è un problema, ma è qualcosa da tenere a mente. se puoi vivere senza alimentare le tue parole chiave if
o creare una raccolta di scelte memorizzate nella cache da Object.create(), è un modo semplice e veloce per codificare "uno dei flussi sopra".
'Progress.bar.status? ('finito' || 'caricamento'): 'qualcos'altro'' –
Quali sono gli altri valori possibili? –
@SwarajGiri, questo non funziona, perché ogni stringa non vuota restituisce true e che forza ''finished'' per tornare. ma il requisito di // codice qui non è (non può essere) implementato. –