Bonvenon Ĝavoskripto 2.0

Ĝavoskripto regas la retejon kaj ECMAScript, la kerno de la lingvo kreskas. La nova specifo (ES6 aŭ JS2), atendata meze de ĉi tiu jaro, alportas multajn novigojn, kiujn oni povas provi hodiaŭ. Fajrovulpo nuntempe havas la plej bonan subtenon , sed ankaŭ eblas plenigi plur-plenumojn per tiel nomataj transpililoj kiel Google Traceur . Sekvas mallonga superrigardo de la novaj funkcioj de ES6.


La nova ŝlosilvorto let faras multajn aferojn pli bone ol var : Scoping nun kondutas ekzakte kiel en aliaj lingvoj (C / C ++, Java), tial se-blokoj nun ankaŭ havas sian propran amplekson. La levado, t.e. la antaŭenigo de variaj deklaroj (ne valoraj taskoj) ene de la respektiva amplekso ankaŭ estas riparita:

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

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

La nombro de aliaj novigoj estas longa: konstantoj (const), aprioraj valoroj por funkcioj (funkcio pow (a, b = 2) {return Math.pow (a, b);}), nova notacio por funkcioj (let pow = (a, b = 2) => Math.pow (a, b);), amaso da novaj funkcioj (repeat (), enhavas (), startsWith (), find (), findIndex ()), la nova bukla konstruo por ... de.

La novaj datumtipoj, mapo, prokurilo kaj simbolo, la importado de (aliaj partoj) JavaScript-dosieroj kun importado kaj nova intuicia sintakso por klasoj kaj heredo ankaŭ devas esti menciitaj. Ofte estas ankaŭ malgrandaj sed longe atenditaj aferoj kiel la eblo de liniaj rompoj en ĉenaj literoj (notu la specialajn citilojn):

`foo

bar`

Ĝavoskripto delonge estas multe pli ol ilo por malgrandaj retejaj trukoj - ĝi kreas potencajn, altkvalitajn retajn programojn, kiuj neniel estas pli malaltaj ol iliaj labortablaj kolegoj. Kun la granda nombro da helpaj novigoj kaj la subteno jam havebla de ES6, programado estas duoble pli amuza.

Kiu ne ĉiam volis kontroli la egalecon de du nombroj helpe de la nova konstanto Number.EPSILON , kies valoro havas la diferencon inter 1 kaj la sekva pli alta glitkoma valoro?

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