Homepage » Coding » 4 utili istruzioni JavaScript che dovresti sapere

    4 utili istruzioni JavaScript che dovresti sapere

    Le dichiarazioni di JavaScript ci danno il potere di implementare diversi tipi di logica nel nostro codice. JavaScript ci fornisce molti di loro, ognuno dei quali ha il suo scopo e sintassi. Tra gli esempi più noti possiamo trovare dichiarazioni di espressione, istruzioni di iterazione, istruzioni condizionali e altro

    Nel post di oggi vedremo quattro dichiarazioni JavaScript meno comuni potresti non averlo conosciuto prima, ma puoi approfondire la tua conoscenza di JavaScript e permetterti di scrivere codice migliore.

    1. Dichiarazione vuota

    Al posto di qualsiasi istruzione JavaScript, è possibile aggiungere un'istruzione vuota, che è scritta come un singolo punto e virgola ;. Quando l'interprete JavaScript interpreta un'istruzione vuota, nessun codice viene eseguito, quindi possono essere utili a sostituire le sotto-dichiarazioni che non si desidera eseguire.

    Ad esempio, supponiamo che ci sia una variabile chiamata tornasole con il valore predefinito neutro. Basato sul valore di un'altra variabile chiamata pH, tornasole cambia in entrambi acido quando il pH < 7 or di base quando il pH> 7.

    Se il valore di pH risulta non valido, viene generato un errore. Per un condizione in questo modo si applicano le seguenti dichiarazioni condizionali:

     var litmus = 'neutrale'; var pH; se (pH> 0 e pH<7) litmus = 'acidic'; else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value"; 

    Tuttavia l'insieme di istruzioni sopra riportato genera un errore quando pHIl valore di è 7, che non dovrebbe essere il caso.

    quando pH è 7, tornasole dovrebbe mantenere il suo valore predefinito, cioè neutro. Quindi, per un caso come questo, aggiungi una condizione quando pH è 7 con un'istruzione vuota finale.

     var litmus = 'neutrale'; var pH; se (pH> 0 e pH<7) litmus = 'acidic'; else if(pH===7) ; /* empty statement */ else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value";

    Ora, quando pH è 7, l'interprete non esegue alcuna istruzione, e tornasole mantiene il suo valore predefinito, neutro.

    Le istruzioni vuote possono anche essere utilizzate per popolare un array con l'aiuto di per ciclo continuo.

     var ary = []; per (var i = 0; i < 5; ary[i++] = i) ; /* empty statement */ console.log(ary); // [1, 2, 3, 4, 5]

    In genere, a per l'istruzione loop è seguita da una sotto-istruzione costituita da una singola, o da un'istruzione di blocco (quella inclusa in parentesi graffe) da eseguire. Usando un'istruzione vuota al posto dell'istruzione secondaria, l'interprete non avrà nulla da eseguire dopo ogni ciclo, quindi solo il looping si verifica e vengono eseguite le condizioni di loop.

    Nell'esempio sopra, ary [i ++] = i viene eseguito per ogni iterazione del ciclo come parte della condizione di loop e della matrice ary viene istanziato con valori di io.

    2. Il debugger dichiarazione

    In strumenti di debug, possiamo aggiungi marcatori chiamato punti di interruzione a qualsiasi riga nel codice sorgente a segna le linee da dove lo strumento debugger avvierà il debug.

    In JavaScript, il debugger dichiarazione funziona allo stesso modo di un punto di interruzione, tranne che è aggiunto direttamente nel codice sorgente, piuttosto che all'interno di uno strumento. Verrà eseguito qualsiasi debugger in esecuzione fermare l'esecuzione dello script quando raggiunge il debugger dichiarazione per aiutarti a eseguire il debug del codice.

    Ricorda che il debug verrà attivato solo se lo script è in esecuzione in una modalità di debug, Ad esempio, un programma di debug sta già eseguendo l'esecuzione dello script. Se non esiste un programma di debugger attualmente in esecuzione durante l'interpretazione di debugger dichiarazione, l'interprete continuerà il suo lavoro come se nulla fosse accaduto.

    Come test rapido, esegui il codice seguente in Codepen, mantenendo aperto lo strumento debugger del browser:

     console.log ( 'tesing'); debugger; console.log ('istruzione di debug');

    Vedrai un punto di interruzione oltre al debugger dichiarazione come mostrato di seguito nello strumento di debugger del browser.

    3. Dichiarazione etichettata

    In JavaScript, puoi anche aggiungere etichette a determinate istruzioni. In tal modo, puoi in seguito saltare alla dichiarazione etichettata usando la sua etichetta nel tuo codice, tipo come il vai a la dichiarazione funziona in alcune altre lingue.

    Le dichiarazioni etichettate possono essere utilizzate solo insieme al rompere e Continua le affermazioni, come in JavaScript, non sono letterali vai a dichiarazione.

    Tutti e due rompere e Continua può essere utilizzato solo all'interno di istruzioni di loop, come ad esempio per loop (con una eccezione, rompere può essere usato nel interruttore dichiarazione pure). Quindi, possiamo etichettare i loop e usarli rompere e Continua per controllare la loro esecuzione.

    Il sintassi delle dichiarazioni etichettate è semplice, devi solo aggiungere il nome dell'etichetta con i due punti seguenti, come puoi vedere nell'esempio qui sotto, dove ciclo continuo è il nome dell'etichetta che aggiungiamo al per ciclo continuo.

     loop: for (var i = 0; i<5; i++) if(i===2) continue loop; console.log(i); // 0, 1, 3, 4 

    Quando il valore di io è 2, l'esecuzione salta indietro al ciclo invece di procedere e quindi impedisce l'output della console di “2”.

    Ora vediamo un altro esempio con il rompere dichiarazione. Basta sostituire il Continua parola chiave con rompere nell'esempio sopra, e noterai che invece di tornare al ciclo come ha fatto con Continua, il ciclo termina / rompe del tutto.

     loop: for (var i = 0; i<5; i++) if(i===2) break loop; console.log(i); // 0, 1 

    Gli esempi sopra riportati sono piuttosto semplici, in modo che tu possa capire rapidamente come funzionano le istruzioni etichettate, ma nella codifica della vita reale, le etichette sono più frequentemente usate nei loop compositi, quando è necessario distinguere i diversi loop, come nell'esempio seguente:

     loop: for (var i = 0; i<4; i++)  for(var j=0; j<2; j++)  if(i===2 && j===1) break loop; console.log(i+"-"+j); 

    Qui, il anello esterno pause al valore 2 per variabile io e a 1 per j, e la console restituisce il seguente risultato:

     0-0 0-1 1-0 1-1 2-0

    4. Il con dichiarazione

    Quando interprete JS si imbatte in un nome non qualificato che non specifica a quale oggetto o funzione è associata la chiamata cerca nella catena di portata per ogni oggetto o funzione adatto a cui può riferirsi la chiamata.

    Usando il con dichiarazione, possiamo aggiungi un oggetto all'inizio della catena dell'ambito, e specificare a quale oggetto è associata la chiamata.

    Nell'esempio seguente, puoi vedere che le proprietà di persona gli oggetti sono chiamati usando i loro nomi solo all'interno del con dichiarazione.

     var person = firstName: "John", lastName: "Doe", età: "18", paese: "Groenlandia"; con (persona) console.log ("Ciao, il mio nome è" + firstName + "" + lastName + ". Sono" + age + "anni e vivo in" + country + ".");  // "Ciao, mi chiamo John Doe. Ho 18 anni e vivo in Groenlandia".

    Confronta come apparirebbe il codice sopra senza usare il con dichiarazione:

     var person = firstName: "John", lastName: "Doe", età: "18", paese: "Groenlandia"; console.log ("Ciao, il mio nome è" + person.firstName + "" + person.lastName + ". Sono" + person.age + "anni e vivo in" + person.country + "." ); // "Ciao, mi chiamo John Doe. Ho 18 anni e vivo in Groenlandia".

    Puoi vedere il con l'istruzione può essere un'ottima scorciatoia se si lavora con molte proprietà dello stesso oggetto.

    Si noti tuttavia che l'uso di con dichiarazione in modalità rigorosa non è permesso, dal momento che può causare confusione nell'oscilloscopio.

    Inoltre, si consiglia di utilizzare solo il con dichiarazione se le sue dichiarazioni interne utilizzano l'oggetto associato al con dichiarazione, altrimenti l'interprete perderà tempo a guardare nell'oggetto menzionato da con in primo luogo, per tutti i nomi di proprietà non qualificati che troverà successivamente nel con bloccare.