Bun venit JavaScript 2.0

JavaScript domină webul și ECMAScript, nucleul limbii crește. Noua specificație (ES6 sau JS2), care este așteptată la mijlocul acestui an, aduce numeroase inovații care pot fi încercate astăzi. Firefox are în prezent cel mai bun suport , dar sunt posibile și completări prin așa-numitele transpilatoare, cum ar fi Google Traceur . Următorul este o scurtă prezentare generală a noilor caracteristici ale ES6.


Noul cuvânt cheie let face mult mai bine decât var : Scoping se comportă acum exact ca în alte limbi (C / C ++, Java), motiv pentru care blocurile if au acum propriul lor domeniu de aplicare. Ridicarea, adică aducerea la dispoziție a declarațiilor variabile (nu a atribuirilor de valori) în domeniul respectiv este, de asemenea, reparată:

console.log(x);
var x = 'foo'; 
// undefined

console.log(y);
let y = 'bar';
// not initialized

Numărul altor inovații este lung: constante (const), valori implicite pentru funcții (funcția pow (a, b = 2) {return Math.pow (a, b);}), o nouă notație pentru funcții (let pow = (a, b = 2) => Math.pow (a, b);), o multitudine de funcții noi (repeat (), conține (), startsWith (), find (), findIndex ()), noua construcție de buclă pentru ... de.

De asemenea, ar trebui menționate noile seturi de tipuri de date, hartă, proxy și simbol, importul de (alte părți) fișiere JavaScript cu import și o nouă sintaxă intuitivă pentru clase și moștenire. Dar de multe ori există și lucruri mici, dar mult așteptate, cum ar fi posibilitatea întreruperilor de linie în literele șirului (rețineți ghilimelele speciale):

`foo

bar`

JavaScript a fost mult timp mai mult decât un instrument pentru mici trucuri de site-uri web - creează aplicații web puternice, de înaltă performanță, care nu sunt în niciun fel inferioare omologilor lor de pe desktop. Cu numărul mare de inovații utile și suportul deja disponibil de la ES6, programarea este de două ori mai distractivă.

Cine nu a dorit întotdeauna să verifice egalitatea a două numere cu ajutorul noii constante constante Number.EPSILON , a cărei valoare poartă diferența dintre 1 și următoarea valoare în virgulă mobilă mai mare?

let cmp = (a,b) => Math.abs(a-b) 
Înapoi