JavaScript dominon uebin - dhe ECMAScript, thelbi i gjuhës, po piqet. Specifikimi i ri (ES6 ose JS2), që pritet në mesin e vitit, sjell risi të shumta që mund të testohen tashmë. Firefox aktualisht ofron mbështetjen më të mirë , por edhe polifill-et nëpërmjet transpilerëve si Google Traceur janë të mundshme. Më poshtë është një përmbledhje e shkurtër e veçorive të reja të ES6.
Fjala kyçe e re le të bëjë shumë gjëra më mirë se var : shtrirja tani sillet saktësisht si në gjuhët e tjera (C/C++, Java), kjo është arsyeja pse nëse blloqet tani kanë gjithashtu shtrirjen e tyre. Ngritja, d.m.th. prioritizimi i deklaratave të variablave (jo caktimit të vlerave) brenda fushës përkatëse, do të riparohet gjithashtu.:
console.log(x); var x = 'foo'; // undefined console.log(y); let y = 'bar'; // not initialized
Numri i inovacioneve të tjera është i madh: konstante (const), vlerat e paracaktuara për funksionet (funksioni pow(a,b=2) { return Math.pow(a,b); }), një shënim i ri për funksionet (le pow = (a,b=2) => Math.pow(a,b);), një shumëllojshmëri funksionesh të reja (përsërisni (përsërisni) ndërtim lak për ... e.
Vlen të përmenden gjithashtu llojet e reja të të dhënave Set, Map, Proxy dhe Symbol, aftësia për të importuar (pjesë të tjera) skedarë JavaScript me import dhe një sintaksë e re intuitive për klasat dhe trashëgiminë. Por shpesh ka edhe gjëra të vogla, por të shumëpritura, si mundësia e ndërprerjes së rreshtave në vargje fjalë për fjalë (vini re thonjëzat speciale):
`foo bar`
JavaScript ka qenë prej kohësh shumë më tepër sesa thjesht një mjet për truke të vogla me faqet e internetit – përdoret për të krijuar aplikacione të fuqishme dhe me performancë të lartë në internet, të cilat janë po aq të mira sa homologët e tyre për desktop. Me bollëkun e veçorive të reja të dobishme dhe mbështetjen ekzistuese për ES6, programimi është dyfish më i këndshëm.
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) < Number.EPSILON;