favore qualcuno può spiegarmi cosa questa riga di codice fa:JavaScript fallback variabile
var list = calls[ev] || (calls[ev] = {});
La mia ipotesi migliore:
E 'l'impostazione della "lista" variabile con il valore di calls.xxx, dove xxx è una variabile, ev. Se le chiamate [ev] non esistono, allora la sta creando come un oggetto vuoto e assegnando tale oggetto vuoto a "lista". È giusto?
Perché viene utilizzata la parentesi? Dove posso trovare maggiori informazioni sull'uso di || quando si impostano le variabili e l'uso delle parentesi in questo contesto? Grazie!
La parentesi sta solo garantendo la giusta valutazione dell'espressione, perché '||' ha una precedenza più alta rispetto all'operatore di assegnazione '='. Senza parentesi, è stato valutato come 'var list = (chiama [ev] || chiama [ev]) = {};' e genera un errore. Il [riferimento JavaScript MDN] (https://developer.mozilla.org/en/JavaScript/Reference) è piuttosto completo. –
possibile duplicato di [Cosa fa il || operatore?] (http://stackoverflow.com/questions/830618/what-does-the-operator-do) –