Klasy w JavaScript ES5 i ES6 – bitwa

08 stycznia 2019

Tagi: IT, TechBlog

Język Java­Script zna­ny jest z te­go, że nie po­ja­wia się w nim, przy­naj­mniej wprost, po­ję­cie kla­sy. Obiekty two­rzy się przez pro­to­ty­po­wa­nie, a każ­dy z nich mo­że być roz­bu­do­wy­wa­ny o do­dat­ko­we po­la, wła­ści­wo­ści i me­to­dy. Mimo to, pro­gra­miś­ci lu­bią ope­ro­wać po­ję­ciem kla­sy i wie­le osnów pro­gra­mis­tycz­nych Java­Script ba­zu­je na włas­nych me­cha­niz­mach sy­mu­lu­ją­cych ist­nie­nie klas. Nawet naj­now­sze wcie­le­nia ję­zy­ka, ta­kie jak ECMAScript 2015, wpro­wa­dza­ją sło­wo klu­czo­we class i po­zwa­la­ją pro­gra­mis­tom za­pi­sy­wać kla­sy tak sa­mo, jak w ję­zy­kach Java lub C++.

Nie ozna­cza to jed­nak, że w „czys­tym” dia­lek­cie Java­Script nie moż­na wy­ko­rzys­ty­wać klas. W po­niż­szym tekś­cie znaj­dzie­cie li­stę wszyst­kich przy­dat­nych wy­ra­żeń poz­wa­la­ją­cych two­rzyć pro­to­ty­py obiek­tów za­cho­wu­ją­ce się jak kla­sy, a tak­że ich po­rów­na­nie z no­wy­mi ele­men­ta­mi skład­ni ES6.