So che ES6 non è ancora standardizzato, ma molti browser attualmente supportano le const parole chiave in JS.
Nelle specifiche è scritto che:
Il valore di una costante non può cambiare tramite riassegnazione e una costante non può essere dichiarata nuovamente. Per questo motivo, sebbene sia possibile dichiarare una costante senza inizializzarla, sarebbe inutile farlo.
e quando faccio qualcosa del genere:
const xxx = 6;
xxx = 999;
xxx++;
const yyy = [];
yyy = 'string';
yyy = [15, 'a'];
Vedo che tutto è ok xxxè ancora 6ed yyyè [].
Ma se lo faccio yyy.push(6); yyy.push(1);, il mio array costante è stato modificato. In questo momento lo è [6, 1]e comunque non riesco ancora a cambiarlo yyy = 1;.
Questo è un bug o mi manca qualcosa? L'ho provato con le ultime Chrome e FF29