Javascrip{filter}t ir ļoti dīvaina nosaukumu vēsture.
Tas pirmo reizi tika izlaists 1995. gadā kā daļa no Netscape Navigator, kas jaunajai valodai deva nosaukumu Livescrip{filtering}t. Gadu vēlāk, lai noķertu toreizējo mediju ažiotāžu par Java, nosaukums uz laiku tika mainīts uz Javascrip{filtering}t (protams, attiecības starp Java un Javascrip{filtering}t ir tādas pašas kā Lei Feng un Lei Feng Tower - tam nav nekāda sakara ar to)
Greizais riekstu joks nemaz nav smieklīgs
Tulkotāja piezīme: Vikipēdijas Javascrip{filter}t ieraksts apraksta šo vēsturi sīkāk
1996. gadā Netscape iesniedza Javascrip{filtering}t ECMA International (European Computer Manufacturers Association) standartizācijai un beidzot pabeidza jaunu valodas standartu, kas bija ECMAscrip{filtering}t. Kopš tā laika ECMAscrip{filtering}t ir bijis pamats visām Javascrip{filtering}t implementācijām, lai gan vēsturisku un tirgus iemeslu dēļ (acīmredzot ECMAscrip{filtering}t nav patīkams nosaukums...... Patiesībā mēs izmantojam tikai ECMAscrip{filter}t, lai izsauktu standartu, un mēs parasti izmantojam Javascrip{filter}t, lai izsauktu šo valodu.
Terminoloģija:
- Standarta: kārtulu kopa, kas nosaka, kas to atšķir no citām lietām
- Ieviešana: standarta specifiskā ieviešana/reālā prakse
Tomēr Javascrip{filtering}t izstrādātājiem tas nerūp, jo ECMAscrip{filtering}t nav daudz mainījies 15 gadu laikā kopš tā izveides, un daudzas reālās pasaules ieviešanas jau ir ļoti atšķirīgas no standarta. Faktiski pēc pirmās ECMAscrip{filtering}t versijas izlaišanas drīz pēc tam tika izlaistas vēl divas versijas, bet kopš ECMAscrip{filter}t 3 izlaišanas 1999. gadā desmit gadus oficiālajā specifikācijā nav veiksmīgi pievienotas nekādas izmaiņas. Tā vietā pārlūkprogrammu pārdevēji cenšas paplašināt savas valodas, atstājot tīmekļa izstrādātājiem citu izvēli, kā eksperimentēt un atbalstīt šīs API. Pat pēc ECMAscrip{filter}t 5 izlaišanas 2009. gadā bija nepieciešami vairāki gadi, lai šīs jaunās specifikācijas iegūtu plašu pārlūkprogrammu atbalstu, taču lielākā daļa izstrādātāju joprojām rakstīja ECMAscrip{filtering}t 3 stila kodu un nejuta vajadzību par tām uzzināt.
Tulkotāja piezīme: ECMAscrip{filter}t 4. versijas melnraksts tika atmests, jo tas bija pārāk agresīvs, un Adobe Actionscrip{filtering}t 3.0 ir vienīgā ECMAscrip{filtering}t 4. izdevuma ieviešana (Flash gandrīz vienoja tīmekli)
Līdz 2012. gadam lietas pēkšņi sāka mainīties. Vecākām IE versijām ir jāpārtrauc atbalsts, un ir iespējams rakstīt kodu ECMAscrip{filter}t 5 (ES5) stilā. Tajā pašā laikā tiek palaista jauna ECMAscrip{filtering}t specifikācija. Šajā brīdī cilvēki sāka pierast aprakstīt dažādas Javascrip{filtering}t implementācijas ECMAscrip{filter}t specifikācijas versiju atbalsta ziņā. Šis jaunais standarts sākotnēji tika saukts par ES. Harmonija. 2015. gadā TC39, komiteja, kas atbild par ECMAscrip{filter}t specifikācijas projekta izstrādi, nolēma mainīt jaunu standartu definēšanas sistēmu uz vienu reizi gadā, kas nozīmē, ka katru jauno funkciju var pievienot pēc tā apstiprināšanas, nevis iepriekšējo specifikāciju pabeigt tikai pēc tam, kad viss projekts ir pabeigts un visas funkcijas ir kārtībā. Tā rezultātā ECMAscrip{filtering}t versija 6 tika pārdēvēta par ECMAscrip{filtering}t 2015 (ES2015) pirms tās publicēšanas jūnijā.
Joprojām tiek piedāvāts daudz jaunu Javascrip{filter}t funkciju vai sintakses, ieskaitot dekoratorus, async-await un statiskās klases rekvizītus. Tos bieži dēvē par ES7, ES2016 vai ES. Tālāk, bet patiesībā tos var saukt tikai par priekšlikumiem vai iespējām, galu galā ES2016 specifikācija vēl nav pabeigta, un ir iespējams, ka visi no tiem tiks ieviesti vai neviens no tiem netiks ieviests. TC39 sadala priekšlikumu 4 fāzēs, un jūs varat pārbaudīt, kurā stadijā katrs priekšlikums pašlaik atrodas Bābeles tīmekļa vietnē.
Tātad, kā mēs izmantojam šo terminoloģijas kaudzi? Šis saraksts var jums palīdzēt:
- ECMAscrip{filter}t: ECMA International standartizēta un TC39 komitejas uzraudzīta valoda. Bieži izmanto, lai atsauktos uz pašu standartu.
- Javascrip{filtering}t: visizplatītākais nosaukums dažādām ECMAscrip{filtering}t standarta implementācijām. Šis termins neaprobežojas tikai ar konkrētu ECMAscrip{filtering}t specifikācijas versiju, un to var izmantot jebkuras ECMAscrip{filtering}t versijas dažādai ieviešanas pakāpei.
- ECMAscrip{filtering}t 5 (ES5): ECMAscrip{filtering}t piektais izdevums, standartizēts 2009. gadā. Šī specifikācija ir diezgan pilnībā ieviesta visās mūsdienu pārlūkprogrammās.
- ECMAscrip{filter}t 6 (ES6) / ECMAscrip{filter}t 2015 (ES2015): ECMAscrip{filtering}t sestais izdevums tika pārskatīts un standartizēts 2015. gadā. Šis standarts ir daļēji ieviests lielākajā daļā mūsdienu pārlūkprogrammu. Varat skatīt šo saderības tabulu, lai uzzinātu, kā tiek ieviestas dažādas pārlūkprogrammas un rīki.
- ECMAscrip{filter}t 2016: gaidāmais ECMAscrip{filter}t redakcijas septītais izdevums, ko plānots izlaist nākamajā vasarā. Īpašās iezīmes, kas tiks iekļautas šajā specifikācijā, vēl nav pabeigtas
- ECMAscrip{filter}t priekšlikumi: līdzekļu un sintakses priekšlikumi, kurus apsver iekļaušanai ECMAscrip{filter}t standarta turpmākajās versijās, iziet piecus posmus: Strawman, Proposal, Draft, Candidate un Finished.
Šajā emuārā es atsaucīšos uz pašreizējo ECMAscrip{filtering}t versiju kā ES6 (jo tas ir tas, pie kā lielākā daļa izstrādātāju ir visvairāk pieraduši), nākamā gada specifikāciju kā ES2016 (jo, atšķirībā no ES6/ES2015, šis nosaukums tiks izmantots visā standartizācijas procesā) un nākotnes valodas koncepcijas, kas vēl nav pabeigtas vai izstrādātas ECMAscrip{filtering}t priekšlikumi vai Javascrip{filter}t priekšlikums. Es darīšu visu iespējamo, lai sekotu šim rakstam jebkurā gadījumā, kas var radīt neskaidrības.