JavaScript, ES6, ES7, ES10 a che punto siamo?
Il Gennaio 26, 2022 da adminES6 e ES7 – promemoria
Non ho intenzione di insultarvi, e scrivere l’ennesima introduzione a ES6… Ma in realtà, lo farò. In poche parole, ES6 (o ES2015) è il gruppo di funzioni che hanno superato la fase 4 secondo la pietra miliare del 2015. In altre parole, se hai una buona comprensione di ES6 e qualche conoscenza di ES7, hai circa 4 anni per recuperare…Nessuna pressione.
Diamo un’occhiata a ciò che è ufficialmente parte di ES6. A proposito, tutte queste caratteristiche sono ufficialmente supportate da tutti i browser. In altre parole, non hai bisogno di Babel per usarle (a meno che tu non supporti IE 11, che ne manca qualcuna).
In ES6 abbiamo:
La possibilità di creare ed ereditare classi.
class MyComponent extends React.Components {}
Moduli ES6 con import ed export.
import * from 'React';export default MyComponent;
Generatori
let fibonacci = {
*() {
let pre = 0, cur = 1
for (;;) {
=
yield cur
}
}
}
Hai notato? Decoratori, destrutturazione degli oggetti (come React props: {…props}) e così via non fanno parte di ES6!
Per quanto riguarda ES7 (ES2016) ecco cosa abbiamo. È un aggiornamento abbastanza piccolo:
- L’operatore di esponenziazione
base ** exponent
- Array include
array.includes(myItem) // true or false
Fonte: http://ecma-international.org/ecma-262/7.0/
Come avrete probabilmente notato, no, Async/Await non fa parte di ES7, ma di ES8!
ES8, ES9, ES10
Tutti quelli che hanno avuto un colloquio relativo a JavaScript negli ultimi 2 anni, si sono sentiti chiedere almeno 1671 volte cos’è ES6, e quali caratteristiche porta. Ma qualcuno ha notato come JS ovviamente non si sia fermato improvvisamente a ES6 o ES7, eppure, nessuno vi sta chiedendo nulla a riguardo? Ecco la vostra opportunità di fare le cose per bene!
In ES8 (ES2017), ecco le caratteristiche disponibili:
E naturalmente, le funzioni Async / Await:
Se avete seguito l’articolo, ormai dovreste averlo capito: Con solo piccole eccezioni, essendo queste funzioni di fase 4, sei in grado di usarle nei browser senza Babel (detto questo, essendo ES8 ES2017, è ancora abbastanza recente e alcune implementazioni come Edge e il motore nativo di Opera sono un po’ indietro).
Lascia un commento