JavaScript Jargon 10 Termini che dovresti sapere
A partire dal accattivarsi a chiusure ci sono un certo numero di gerghi JavaScript (parole speciali usate nel campo) che sanno che non solo ti aiuteranno ad aumentare il tuo vocabolario, ma comprenderanno meglio JavaScript. I gerghi si trovano normalmente nelle documentazioni e negli articoli tecnici. Ma alcuni di loro piace chiusure sono cose abbastanza standard da sapere. Sapere cosa significa la parola stessa può aiutarti a capire meglio il concetto che ha chiamato.
Questo post è la compilazione di 10 tali termini con il loro significato e il contesto in cui vengono utilizzati in JavaScript. Se sei un principiante allora questa lista ti ha coperto con le basi come sollevamento. Allo stesso tempo sono inclusi anche termini meno conosciuti o meno compresi.
- arity
- Anonimo
- Chiusura
- accattivarsi
- sollevamento
- Mutazione
- Pragma
- Sentinella
- Vaniglia
- variadic
1. Arity
arity (dal latino) è il termine usato per riferirsi al numero di argomenti o operandi rispettivamente in una funzione o operazione. È più probabile che si imbatta in questa parola nel regno di JavaScript quando viene utilizzato per menzionare il numero di argomenti previsti da una funzione JavaScript.
Esiste persino una proprietà chiamata arity, del Funzione
oggetto che restituisce il numero di argomenti previsti in una funzione. Ora è obsoleto e sostituito da lunghezza
.
La seguente funzione ha un'arità di 3.
function getName (first, middle, last) return first + "+ middle +" + last;
2. Anonimo
Anonimo è un aggettivo. Quando qualcosa o qualcuno viene definito anonimo, significa che il nome di quella persona o persona non è identificato. Allo stesso modo in JavaScript una funzione anonima è quella che non è identificata da un nome.
(function () // body) ();
Sopra è un IIFE (espressione di funzione immediatamente invocata). La funzione in esso è anonima poiché non ha un nome. Ora, dai uno sguardo a quello qui sotto.
var foo = function () ;
Si dice anche che sia una funzione anonima poiché non c'è un nome dopo la parola chiave funzione
.
Un po 'di dubbio sorge nella correttezza dell'uso della parola “anonimo”. Con IIFE, la funzione viene chiamata immediatamente, nessun nome coinvolto mentre, per chiamare quest'ultima funzione la sintassi foo ()
viene usato.
È come se avessimo battezzato una funzione senza nome con il nome 'foo' e l'avremmo chiamata usando quello. Conta come anonimo? Non lo so, lo lascerò agli esperti inglesi. Ma a parte la mia confusione, entrambi sono indicati come funzione anonima.
3. Chiusura
Ecco una delle definizioni dal dizionario oxford per chiusura: “Una cosa che chiude o sigilla qualcosa, come un berretto o una cravatta.”
In JavaScript, la chiusura è una funzione interna, accessibile al di fuori dell'ambito della sua funzione esterna, con la sua connessione alle variabili della funzione esterna ancora intatta.
Per spiegare le cose (forse non esattamente, ma semplicemente abbastanza), prendi in considerazione chiusura come cameriere in un ristorante. Un sacco di cose accadono all'interno di una cucina del ristorante, dove non è permesso entrare o vedere. Ma come dovremmo avere il nostro cibo allora?
È qui che arrivano i camerieri. Li chiamiamo, ordiniamo il cibo, poi andiamo in cucina, informiamo gli chef degli ordini e ce li portano quando l'ordine è pronto. In questo modo non ne abbiamo rotto nessuno “regole” e può ancora riuscire ad afferrare un pasto.
Il cameriere è qualcuno che è in grado di portare il nostro ordine in cucina e tornare con il cibo. JavaScript chiusure sono simili a quello, sono in grado di prendi i nostri parametri e riportaci le variabili (riferimenti a tali variabili, per essere precisi) dall'interno di una funzione che non è consentita.
ordine di funzione () var food; cameriere di funzione (ordine) chef (ordine); restituire il cibo; chef di funzione (ordine) if (ordine === 'pasta') cibo = ['pasta', 'sugo', 'condimento']; cucinare(); function cook () food.push ('cotto'); cameriere di ritorno; var myOrder = order (); console.log (Myorder ( 'pasta')); // Array ["pasta", "sugo", "condimento", "cotto"]
Come puoi vedere dal codice sopra, tutto a parte Cameriere
e il suo valore di ritorno dall'interno della funzione dell'ordine non è esposto al mondo esterno.
4. Currying
L'effetto, chiamato dopo Haskell Curry, si riferisce a utilizzando più funzioni con singoli argomenti, al posto di una singola funzione con più argomenti. Vediamo il Inserisci
funzioni sotto per esempio.
function addx (x) function addy (y) return x + y; return addy function add (x, y) return (x + y); console.log (addx (3) (4)); \\ 7 console.log (aggiungi (3,4)); \\ 7
Entrambe le funzioni restituiscono lo stesso risultato. La funzione addx
accetta un parametro X
mentre ritorno addy
che a sua volta accetta il y
valore, esegue l'aggiunta con X
e restituisce la somma.
La funzione Inserisci
semplicemente prende entrambi X
e y
allo stesso tempo, esegue l'addizione e restituisce la somma. Finora la prima funzione potrebbe non sembrare molto utile, fino a ...
var add4 = addx (4); console.log (ADD4 (8)); // 12 console.log (add4 (6)); // 10 console.log (add4 (-74)); // - 70
Ora, la funzione precedente diventa improvvisamente interessante. Nel currying, puoi sempre fissare un passo in una sequenza di operazioni come l'aggiunta di 4 dal codice precedente, che è utile quando una delle variabili usate nell'operazione è sempre la stessa.
5. sollevamento
Hoist significa sollevare qualcosa. sollevamento in JavaScript significa anche lo stesso e ciò che viene generato è la dichiarazione (variabili e dichiarazioni di funzioni).
Le dichiarazioni sono dove variabili e funzioni sono create con parole chiave var
(non per globale) e funzione
.
Non importa dove si digita il codice per dichiarare una funzione o una variabile, durante la valutazione tutte le dichiarazioni vengono spostate all'interno dell'ambito in cui risiedono (tranne che in modalità rigorosa). Quindi, è possibile scrivere un codice funzionante con il codice per la chiamata di funzione posta prima della dichiarazione di funzione.
var name = 'Velma'; console.log (sayCatchPhrase (nome)); // "Jinkies!" funzione sayCatchPhrase (nome) frasi = 'Fred Flintstone': 'Yabba dabba doo!', 'Velma': 'Jinkies!', 'Rasoio': 'Bingo!', 'He-Man': 'I Have the Power '; frasi di ritorno [nome];
6. Mutazione
Mutazione significa cambiamento o modifica. Se ti capita di imbattersi nella parola mutation in JavaScript, probabilmente si riferisce alle modifiche che gli elementi DOM hanno attraversato.
C'è anche un'API chiamata MutationObserver per tenere d'occhio le mutazioni DOM come aggiunta di elementi figlio o modifiche agli attributi dell'elemento. (Puoi leggere ulteriori informazioni su MutationObserver nel mio post.)
7. Pragma
Pragma è breve per informazioni pragmatiche. In parole semplici, pragmatico è un aggettivo che significa ragionevole e pratico. In programmazione, pragma si riferisce al codice che consiste di informazioni utili su come un compilatore o interprete o assemblatore dovrebbe elaborare il programma.
Non contribuisce in alcun modo al linguaggio di programmazione stesso e la sua sintassi può variare. Hanno effetto solo sul comportamento del compilatore. JavaScript ha anche pochi pragmi, uno di questi è rigoroso
.
"usare rigorosamente";
Con il pragma precedente, il codice JavaScript verrà eseguito in modalità rigorosa. In modalità rigorosa, la sintassi errata non è consentita, sollevamento non è fatto, gli errori silenziosi sono mostrati, ecc. Aiuta a scrivere un codice JavaScript più sicuro e ottimizzato.
8. Sentinella
sentinelle sono soldati che stanno in guardia (ricordate quelli di X-Men?). In programmazione, sentinelle sono valori che vengono utilizzati per indicare la fine di un ciclo o processo. Possono anche essere chiamati “bandiere”.
Puoi usare qualsiasi valore ragionevole come a sentinella. Ecco un esempio di sentinelle usato in JavaScript; il indice di
metodo che restituisce -1 (il valore sentinella) quando il valore di ricerca non viene trovato nella stringa mirata. Di seguito è riportata una funzione che restituisce la posizione di un valore di matrice e se il valore non viene trovato, restituisce -1.
funzione getPos (ary, val) var i = 0, len = ary.length; for (; i9. Vaniglia
Penso che il primo gelato al gusto di tutti debba essere stato vaniglia. Penso anche che non solo nel gelato, ma in quasi ogni tipo di piatto dolce diventato vaniglia il sapore standard Ho visto un bel po 'di ricette per dolci dove ne aggiungono almeno una goccia nel mix - solo per aumentare il sapore.
E questo è quello vaniglia è un sapore standard tradizionale. Vaniglia JavaScript è riferito allo standard JavaScript - nessun framework. Vanilla infatti non è solo usato per descrivere la versione standard di JavaScript, ma anche altri linguaggi come i CSS.
10. Variadic
variadic è un aggettivo creato dall'unione “variabile” e “adicity”. “Adicity” è dal greco antico, con un significato che è la stessa della parola latina “arity” (Articolo 1 in questo elenco). Quindi, il termine variadic è abituato a esprimere qualcosa che ha un numero variabile di argomenti.
In JavaScript, a variadic la funzione accetta un numero qualsiasi di argomenti. Può essere creato usando
argomenti
proprietà,applicare
metodo e dal momento che ES6, l'operatore di spread. Di seguito è riportato un esempio utilizzando un operatore di spread.function test (... a) console.log (a); test ('a', 'b', 'c', 8, [56, -89]); // output è Array ["a", "b", "c", 8, Array [2]]