Բարի գալուստ JavaScript 2.0

JavaScript- ը գերակշռում է ոստայնում և ECMAScript- ում, լեզվի առանցքն աճում է: Նոր հստակեցումը (ES6 կամ JS2), որը սպասվում է այս տարվա կեսերին, իր հետ բերում է բազմաթիվ նորամուծություններ, որոնք այսօր արդեն հնարավոր է փորձարկել: Firefox- ը ներկայումս ունի ամենալավ աջակցությունը , բայց հնարավոր է նաև պոլֆիլիացում, այսպես կոչված, Google Traceur- ի միջոցով: Ստորև ներկայացված է ES6- ի նոր առանձնահատկությունների հակիրճ նկարագրություն:


Թույլ տվեք, որ նոր հիմնաբառը շատ բաներ ավելի լավն է, քան var- ը . Scoping- ն այժմ իրեն պահում է ճիշտ այնպես, ինչպես մյուս լեզուներում (C / C ++, Java), այդ իսկ պատճառով եթե-բլոկներն այժմ ունեն նաև իրենց սեփական շրջանակը: Վերականգնվում է նաև բարձրացումը, այսինքն `համապատասխան շրջանակներում փոփոխական հայտարարագրերի (ոչ թե արժեքային նշանակումների) առաջ քաշումը:

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

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

Այլ նորամուծությունների քանակը երկար է. Հաստատուններ (հաստատուններ), գործառույթների լռելյայն արժեքներ (ֆունկցիա pow (a, b = 2) {վերադարձնել մաթ. Pow (a, b);}), գործառույթների նոր նշում = (a, b = 2) => Math.pow (a, b);), նոր գործառույթների բազմություն (կրկնել (), պարունակում է (), startWith (), find (), findIndex ()), նոր օղակի կառուցում համար ...

Պետք է նշվեն նաև տվյալների նոր տեսակների հավաքածու, քարտեզ, վստահված անձ և խորհրդանիշ, JavaScript ֆայլերի (այլ մասերի) ներմուծում ներմուծմամբ և դասերի և ժառանգության համար նոր ինտուիտիվ շարահյուսություն: Հաճախ լինում են նաև փոքր, բայց երկար սպասված բաներ, ինչպիսիք են տողերի ընդհատումների հնարավորությունը լարային տառերում (նշիր հատուկ չակերտները):

`foo

bar`

JavaScript- ը վաղուց ավելին էր, քան գործիք փոքր հնարքների համար. Այն ստեղծում է հզոր, բարձր արդյունավետությամբ վեբ-ծրագրեր, որոնք ոչ մի կերպ չեն զիջում իրենց աշխատասեղանի նմանակներին: Օգտակար նորարարությունների մեծ թվով և ES6- ի կողմից արդեն հասանելի աջակցությամբ, ծրագրավորումը կրկնակի զվարճալի է:

Ո՞վ միշտ չէ, որ ցանկացել է ստուգել երկու թվերի հավասարությունը նոր հաստատուն թվի միջոցով: EPSILON , որի արժեքը կրում է տարբերությունը 1-ի և հաջորդ բարձր լողացող կետի արժեքի միջև:

let cmp = (a,b) => Math.abs(a-b) 
Վերադառնալ