Recentemente ho scritto molto codice ES6 per io.js. Non c'è molto codice in circolazione da cui imparare, quindi mi sento come se stessi definendo le mie convenzioni.
La mia domanda riguarda quando utilizzare const rispetto a let .
Ho applicato questa regola: se possibile, utilizza const . Usa solo let se sai che il suo valore deve cambiare. (Puoi sempre tornare indietro e modificare const in let se in seguito risulta necessario modificare il suo valore.)
Il motivo principale di questa regola è che è facile applicare in modo coerente. Non ci sono aree grigie.
Il fatto è che quando applico questa regola, in pratica il 95% delle mie dichiarazioni sono const . E questo mi sembra strano. Sto solo usando let per cose come i in un ciclo for , o occasionalmente per cose come i totali accumulati di Fibonacci (che non si presentano molto nella vita reale). Sono rimasto sorpreso da questo: risulta che il 95% delle "variabili" del mio codice ES5 fino ad oggi erano per valori che non variano. Ma vedere const su tutto il mio codice sembra sbagliato in qualche modo.
Quindi la mia domanda è: va bene usare const così tanto? Dovrei davvero fare cose come const foo = function () {...}; ?
O dovrei riservare const per quel tipo di situazioni in cui stai codificando un letterale nella parte superiore di un modulo, il tipo che fai in maiuscolo, come const MARGIN_WIDTH = 410; ?