ʻO JavaScript ka mea nui ma ka pūnaewele - a ʻo ECMAScript, ke kumu o ka ʻōlelo, ke oʻo nei. ʻO ka kikoʻī hou (ES6 a i ʻole JS2), i manaʻo ʻia i waena o ka makahiki, e lawe mai i nā mea hou he nui i hiki ke hoʻāʻo mua ʻia. Hāʻawi ʻo Firefox i ke kākoʻo maikaʻi loa i kēia manawa, akā hiki nō hoʻi nā polyfills ma o nā transpilers e like me Google Traceur . Eia kahi ʻike pōkole o nā hiʻohiʻona hou o ES6.
ʻO ka huaʻōlelo hou e hana i nā mea he nui i ʻoi aku ka maikaʻi ma mua o ka var : ʻano like ka scoping i kēia manawa ma nā ʻōlelo ʻē aʻe (C/C++, Java), ʻo ia ke kumu inā loaʻa i nā poloka i kēia manawa ko lākou ākea. E hoʻoponopono hou ʻia ka hoisting, ʻo ia hoʻi ka hoʻonohonoho mua ʻana o nā ʻōlelo hoʻololi (ʻaʻole i hāʻawi ʻia i ka waiwai) i loko o kēlā me kēia.:
console.log(x); var x = 'foo'; // undefined console.log(y); let y = 'bar'; // not initialized
Nui ka helu o nā mea hou aʻe: mau (const), nā waiwai paʻamau no nā hana (hana pow(a,b=2) { hoʻihoʻi Math.pow(a,b); }), kahi notation hou no nā hana (let pow = (a,b=2) => Math.pow(a,b);), nā ʻano hana hou (loaʻa (), loaʻa (ma ka hoʻomaka).
He mea kūpono hoʻi e haʻi ʻia nā ʻano ʻikepili hou Set, Map, Proxy and Symbol, ka hiki ke hoʻokomo (mau ʻāpana o nā faila) JavaScript me ka lawe ʻana a me kahi syntax intuitive hou no nā papa a me ka hoʻoilina. Akā pinepine kekahi mau mea liʻiliʻi akā lōʻihi e kali ʻia e like me ka hiki ke haʻihaʻi i nā laina i loko o nā string literals (e nānā i nā kaha puanaʻi kūikawā):
`foo bar`
Ua lōʻihi ka lōʻihi o JavaScript ma mua o kahi mea hana no nā hana hoʻopunipuni pūnaewele liʻiliʻi - hoʻohana ʻia ia e hana i nā polokalamu pūnaewele ikaika a kiʻekiʻe hoʻi e like me ka maikaʻi o ko lākou mau hoa pākaukau. Me ka nui o nā hiʻohiʻona hou a me ke kākoʻo e kū nei no ES6, ʻoi aku ka leʻaleʻa o ka papahana ʻana i ʻelua manawa.
ʻO wai ka mea i makemake ʻole e nānā i ke kaulike o nā helu ʻelua me ke kōkua o ka helu mau hou. EPSILON , nona ka waiwai ma waena o 1 a me ka helu lana lana kiʻekiʻe aʻe?
let cmp = (a,b) => Math.abs(a-b) < Number.EPSILON;