ECMAScript 6 (ES6) какво е новото в новата версия на JavaScript
Запазете или споделете
Моля, имайте предвид, че подкрепата на тези нови функции ES6 в съвременни браузъри е в разгара си, макар и малко по-разнообразна. Ако трябва да се подкрепят по-стари браузъри, които не използват много ES6 функции, статията ще бъдат засегнати от решението, което може да ви помогне да започнете да използвате ES6.
променливи
Това ще ви помогне да направите кода по-ясно, че в резултат на намаляване на броя на променливите, висящи в обхват. Например, класическата итерация на масива:
Често може да се използва, например, вариабилен й за друг повторение в същия обхват. Но, за да. можете спокойно да декларират и отново, защото променливите са обявени и са достъпни само в рамките на собствената си единица.
Моля, имайте предвид, че все още можете да промените стойностите на свойствата на обекти или членовете масиви:
Избирателната активност функция
Ако се вгледаме в синтаксиса на превключвател функции, ключът няма да видите функцията ключова дума. Остава само нула или повече аргументи, "смели стрелката" (=>) и експресията на функция. Изразът за връщане се добавя имплицитно.
В нула или повече от същия аргумент, трябва да добавите скоби:
Приложете експресията в блока функция (). ако имате нужда от по-сложна логика или повече са интервали знаци (например нов ред):
Аналоговите функции означават не само по-малък брой символи, отпечатани, но тяхното поведение е различно от нормалните функции. Изразяване стрелка наследява тази функция и аргументите на околната контекст. Това означава, че можете да се отървете от грозни изрази като Var, че = това. и не е нужно да се сдружават функция с правилния контекст. Примерен код (обърнете внимание на this.title сравнение с that.title версия ES5):
чифт удобни методи се прибавя към низ прототип. Повечето от тях са просто елиминира отклонения метода indexOf (), за да доведе до същия резултат:
Обикновено, но ефективна. Друг удобен метод е бил добавен към създаване на повтарящ се ред:
шаблонни литерали
Шаблон литерали осигуряват чист начин за създаване на редове и интерполация изрази. Може би вече сте запознати с синтаксиса; тя се основава на знака $ и фигурни скоби. Шаблон литерали са затворени в backquotes. Кратко например:
Както се вижда от по-горе код, шаблонни литерали удобни просто да се слеят в сравнение с ES5. Въпреки това, заместващи литерали могат да бъдат използвани за мулти-литерали. Имайте предвид, че белите знака за интервал (например нов ред) са част от низ:
Има няколко нови методи статичен клас в обекта Array и няколко нови методи имат Array прототип.
На първо място, Array.from създава масив копия на massivopodobnyh и iterable. Примери massivopodobnyh обекти включват:
- аргументи в функция;
- nodeList. върнат от document.getElementsByTageName ();
- Данните на картата на нови структури и Set.
В примера по-горе, можете да видите, че масивът е метод forEach. която не е налична в колекция itemElements.
Интересна особеност е Array.from втори незадължителен аргумент mapFunction. която ви позволява да създадете нов разпределени масив в един разговор.
Следваща имаме Array.of. който се държи много прилича на строителя масива. Той определя специален случай, когато един аргумент един номер. Това прави Array.of повече за предпочитане пред нов Array (). Въпреки това, в повечето случаи ще искате да използвате буквално масив.
- намерите връща първия елемент, за който функция за обратно извикване връща вярно;
- findIndex връща индекса на първия елемент, за който функция обаждане връща вярно;
- попълнете «пренаписва» елементите на масива да преминат аргумент.
Целта Math е е добавен чифт нови методи.
- Math.sign връща знака на номера като 1. -1 или 0;
- Math.trunc декларации, предавани от редица без знаци след десетичната запетая;
- Math.cbrt връща куб корен на число.
Разпределение оператор
Разпределение оператор (.) - това е много удобно синтаксис за разгъване масив елементи в определени места, като аргументите в извикването на функция. Покажете няколко примера - това е може би най-добрият начин да се покаже как те са полезни.
Първо, нека да видим как да разположи елементи на масив в друг масив:
Синтаксис Разпределение също е полезна, когато се обадите функции с аргументи:
Както можете да видите, това ни спасява от често използвани прекосява fn.apply (). Синтаксисът е много гъвкава, така че разпространението на оператора може да се използва навсякъде в списък от аргументи. Това означава, че при следващата покана до същия ефект:
Ние използваме общи оператори до масиви и аргументи. В действителност, тя може да се прилага към всички iterable като NodeList:
Сега allTheThings - едномерен масив, който съдържа елементите