Mirësevini JavaScript 2.0

JavaScript mbizotëron në ueb dhe ECMAScript, thelbi i gjuhës po rritet. Specifikimi i ri (ES6 ose JS2), i cili pritet në mes të këtij viti, sjell me vete risi të shumta që mund të provohen sot. Firefox aktualisht ka mbështetjen mëmirë , por polifills përmes të ashtuquajturve transpiler si Google Traceur janë gjithashtu të mundshme. Më poshtë është një përmbledhje e shkurtër e veçorive të reja të ES6.


Fjala kyçe e re le bën shumë më mirë se var : Scoping tani sillet saktësisht si në gjuhët e tjera (C / C ++, Java), prandaj bllok-blloqet tani kanë edhe shtrirjen e tyre. Riparohet gjithashtu ngritja, d.m.th. sjellja përpara e deklaratave të ndryshueshme (jo caktimet e vlerës) brenda fushës përkatëse:

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

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

Numri i inovacioneve të tjera është i gjatë: konstante (konst), vlera të paracaktuara për funksionet (funksioni pow (a, b = 2) {return Math.pow (a, b);}), një shënim i ri për funksionet (le të = (a, b = 2) => Math.pow (a, b);), një mori funksionesh të reja (përsëris (), përmban (), fillonMe (), gjeni (), findIndex ()), ndërtimin e lakut të ri për ... të.

Duhet përmendur gjithashtu grupi i ri i të dhënave, harta, përfaqësuesi dhe simboli, importi i (pjesëve të tjera) skedarëve JavaScript me import dhe një sintaksë e re intuitive për klasat dhe trashëgiminë. Shpesh ka edhe gjëra të vogla, por të shumëpritura, si mundësia e ndërprerjeve të linjave në vargjet e vargjeve (vini re thonjëzat speciale):

`foo

bar`

JavaScript ka qenë prej kohësh shumë më tepër sesa një mjet për truket e vogla të faqeve të internetit - krijon aplikacione të fuqishme, me performancë të lartë, që në asnjë mënyrë nuk janë inferiore ndaj homologëve të tyre të desktopit. Me numrin e madh të risive të dobishme dhe mbështetjen tashmë të disponueshme nga ES6, programimi është dy herë më argëtues.

Kush nuk ka dashur gjithmonë të kontrollojë barazinë e dy numrave me ndihmën e numrit të ri konstant. EPSILON , vlera e të cilit është ndryshimi midis 1 dhe vlerës tjetër të pikës lundruese tjetër?

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