Assegnare valori predefiniti alle variabili
È possibile utilizzare la logica o l'operatore ||
in un'espressione di assegnazione per fornire un valore predefinito:
var a = b || c;
La a
variabile otterrà il valore c
solo se b
è falsy (se è null
, false
, undefined
, 0
, empty string
, o NaN
), altrimenti a
otterrà il valore di b
.
Ciò è spesso utile nelle funzioni, quando si desidera dare un valore predefinito a un argomento nel caso in cui non venga fornito:
function example(arg1) {
arg1 || (arg1 = 'default value');
}
Esempio di fallback di IE nei gestori di eventi:
function onClick(e) {
e || (e = window.event);
}
Le seguenti funzionalità linguistiche sono state con noi per molto tempo, tutte le implementazioni JavaScript le supportano, ma non facevano parte delle specifiche fino alla quinta edizione di ECMAScript :
La debugger
dichiarazione
Descritto in: § 12.15 L'istruzione debugger
Questa affermazione ti consente di inserire punti di interruzione a livello di codice nel tuo codice semplicemente:
// ...
debugger;
// ...
Se un debugger è presente o attivo, si interromperà immediatamente, proprio su quella linea.
Altrimenti, se il debugger non è presente o attivo questa affermazione non ha alcun effetto osservabile.
Letterali stringa multilinea
Descritto in: § 7.8.4 Letterali a stringa
var str = "This is a \
really, really \
long line!";
Bisogna stare attenti perché il carattere successivo al \
deve essere un terminatore di linea, se si dispone di uno spazio dopo il \
per esempio, il codice sarà guardare esattamente lo stesso, ma sarà sollevare una SyntaxError
.