Javascrip{filter}t-il on väga kummaline nimetusajalugu.
See ilmus esmakordselt 1995. aastal Netscape Navigatori osana, mis andis uuele keelele nime Livescrip{filtering}t. Aasta hiljem, et tabada tolleaegset meedia hype'i Java ümber, muudeti nimi ajutiselt Javascrip{filtering}t-ks (muidugi on Java ja Javascrip{filtering}t suhe sama mis Lei Fengi ja Lei Feng Toweri vahel – sel pole sellega mingit pistmist)
See kõver pähkli nali pole üldse naljakas
Tõlkija märkus: Vikipeedia Javascrip{filter}t sissekanne kirjeldab seda ajalugu üksikasjalikumalt
1996. aastal esitas Netscape Javascrip{filtering}t-i ECMA Internationalile (Euroopa Arvutitootjate Assotsiatsioon) standardiseerimiseks ning lõpuks vormistas uue keelestandardi ECMAscrip{filtering}t. Sellest ajast alates on ECMAscrip{filtering}t olnud aluseks kõigile Javascrip{filtering}t rakendustele, kuigi ajaloolistel ja turulistel põhjustel (ilmselt ECMAscrip{filtering}t ei ole meeldiv nimi...... Tegelikult kasutame standardi kutsumiseks ainult ECMAscrip{filter}t, selle keele kutsumiseks tavaliselt Javascrip{filter}t.
Terminoloogia:
- Standard: reeglistik, mis määratleb, mis eristab seda teistest asjadest
- Rakendamine: Standardi spetsiifiline rakendus/reaalse maailma praktika
Kuid Javascrip{filtering}t arendajad ei hooli sellest eriti, sest ECMAscrip{filtering}t pole viimase 15 aasta jooksul palju muutunud ja paljud pärismaailma rakendused on juba standardist väga erinevad. Tegelikult ilmus pärast ECMAscrip{filtering}t esimese versiooni väljaandmist peagi veel kaks versiooni, kuid alates ECMAscrip{filter}t 3 väljaandmisest 1999. aastal pole ametlikku spetsifikatsiooni kümne aasta jooksul edukalt muudatusi lisatud. Selle asemel püüavad brauseritootjad kiiresti laiendada oma keeli, jättes veebiarendajatele võimaluse neid API-sid katsetada ja toetada. Isegi pärast ECMAscrip{filter}t 5 väljalaskmist 2009. aastal kulus mitu aastat, enne kui need uued spetsifikatsioonid said brauseritelt laialdase toetuse, kuid enamik arendajaid kirjutas siiski ECMAscrip{filtering}t 3 stiilis koodi ega tundnud vajadust neist õppida.
Tõlkija märkus: ECMAscrip{filter}t versiooni 4 mustand jäeti kõrvale, kuna see oli liiga agressiivne, ning Adobe Actionscrip{filtering}t 3.0 on ainus ECMAscrip{filtering}t väljaande 4 rakendus (Flash peaaegu ühendas veebi)
2012. aastaks hakkasid asjad järsku muutuma. Vanemate IE versioonide toe lõpetamiseks on surve ning on teostatavam kirjutada koodi ECMAscrip{filter}t 5 (ES5) stiilis. Samal ajal käivitatakse uus ECMAscrip{filtering}t spetsifikatsioon. Sel hetkel hakkasid inimesed harjuma kirjeldama erinevaid Javascrip{filtering}t rakendusi ECMAscrip{filter}t spetsifikatsiooni versioonitoe kaudu. See uus standard kandis algselt nime ES. Harmoonia. 2015. aastal otsustas TC39, komitee, mis vastutas ECMAscrip{filter}t spetsifikatsiooni eelnõu koostamise eest, muuta uute standardite määratlemise süsteemi kord aastas, mis tähendab, et iga uus omadus saab lisada pärast selle kinnitamist, erinevalt sellest, et eelmine spetsifikatsioon lõplikult kinnitatakse alles pärast kogu mustandi valmimist ja kõigi funktsioonide korrasolekut. Selle tulemusena nimetati ECMAscrip{filtering}t versioon 6 enne juunis avaldamist ümber ECMAscrip{filtering}t 2015 (ES2015).
Endiselt on palju uusi Javascrip{filter}t funktsioone või süntaksit, sealhulgas dekoraatorid, asünkroon-ootamine ja staatilised klassiomadused. Neid nimetatakse sageli ES7, ES2016 või ES-ks. Järgmiseks, kuid tegelikult saab neid nimetada ainult ettepanekuteks või võimalusteks, sest ES2016 spetsifikatsioon pole veel täielik ning on võimalik, et kõik need tutvustatakse või mitte ühtegi. TC39 jagab ettepaneku neljaks etapiks ning saate vaadata, millises etapis iga ettepanek praegu on, Babeli veebilehel.
Kuidas me siis seda terminoloogiat kasutame? Järgmine nimekiri võib teid aidata:
- ECMAscrip{filter}t: ECMA Internationali poolt standardiseeritud ja TC39 komitee järelevalve all olev keel. Sageli kasutatakse seda standardi enda tähistamiseks.
- Javascrip{filtering}t: Kõige tavalisem nimetus ECMAscrip{filtering}t standardi erinevatele rakendustele. See termin ei piirdu ainult konkreetse ECMAscrip{filtering}t spetsifikatsiooni versiooniga ning seda võib kasutada mis tahes ECMAscrip{filtering}t versiooni erineval määral rakendamiseks.
- ECMAscrip{filtering}t 5 (ES5): ECMAscrip{filtering}t viies väljaanne, standardiseeritud 2009. aastal. See spetsifikatsioon on üsna täielikult rakendatud kõigis kaasaegsetes brauserites.
- ECMAscrip{filter}t 6 (ES6) / ECMAscrip{filter}t 2015 (ES2015): ECMAscrip{filtering}t kuues väljaanne uuendati ja standardiseeriti 2015. aastal. See standard on osaliselt rakendatud enamikus kaasaegsetes brauserites. Selle ühilduvuse tabeli põhjal saab näha, kuidas erinevad brauserid ja tööriistad on rakendatud.
- ECMAscrip{filter}t 2016: Oodatav seitsmes väljaanne ECMAscrip{filter}t versioonist, mis on plaanitud ilmuma järgmisel suvel. Spetsifikatsioonis sisalduvad konkreetsed omadused ei ole veel lõplikult paika pandud
- ECMAscrip{filter}t Ettepanekud: Funktsioonide ja süntaksi ettepanekud, mida kaalutakse ECMAscrip{filter}t standardi tulevastesse versioonidesse, läbivad viis etappi: Strawman, Proposal, Draft, Candidate ja Finished.
Kogu selle blogi vältel viitan ECMAscrip{filtering}t praegusele versioonile kui ES6 (sest enamik arendajaid on sellega kõige harjunud), järgmise aasta spetsifikatsiooni kui ES2016 (sest erinevalt ES6/ES2015-st kasutatakse seda nime kogu standardimisprotsessi vältel) ning tulevastele keelekontseptsioonidele, mis pole veel lõplikult vormistatud ega koostatud ECMAscrip{filtering}t ettepanekuteks või Javascrip{filter}t proposal. Teen oma parima, et seda artiklit jälgida igal juhul, kui see võib tekitada segadust.