6 главных особенностей ES6

Этот блог сделан с любовью и javascript

1: ключевое слово const и let

const - это новое ключевое слово для объявления переменных. переменная, объявленная как const, становится неизменной, что означает, что ее нельзя изменить, let также является новым ключевым словом и делает переменные изменяемыми.

2: функция стрелки

стрелочные функции - это новый и лучший способ написания функций в javascript, он делает код более читаемым, давайте посмотрим на пример

let greeting = function(name){
       return "hello " + name;
    }
let greeting = name => {
       return "hello " + name;
    }

Как видите, второй код более читабелен. Разница между ними в том, что у стрелочной функции нет собственного this.

3: шаблонный литерал

нам не нужно добавлять оператор конкатенации (+) для конкатенации строк, мы можем форматировать строки, используя литерал шаблона, давайте возьмем тот же пример

let greeting = name => {
       return `hello  ${name}`;
    }

4: Уничтожение массива и объекта

Уничтожение позволяет нам легко присваивать значения массива или объектов новой переменной.

const user = {
    name : "sachin",
    id:123,
    age:18
};
let name = user.name;
let id = user.id;
let age = user.age;

теперь синтаксис es6 делает то же самое

const user = {
    name : "sachin",
    id:123,
    age:18
};
let {name,age,id} = user;

то же самое можно сделать с массивами

const user = ["sachin" , 123 ,18];
let [name , id ,age] = user;
console.log(name);
console.log(id);
console.log(age);

5: Уроки

Классы - это ядро ​​объектно-ориентированного программирования. Они придают вашему коду правильную структуру и делают его более читабельным.

class Yo
 {
     constructor()
     {
         this.super('yo')
     }
 }

6: Обещания

Promise упрощает написание асинхронного кода. Его можно использовать, если, скажем, вы хотите получить данные из API, или если в вашем коде есть операторы, выполнение которых требует времени.

let promise = new Promise(function(resolve, reject){
     //do something
});

Promises имеет 3 состояния

1 - в ожидании: обещание в ожидании означает в процессе

2 - выполнено: обещание выполнено

3 - отклонено: обещание отклонено

если обещание разрешено, мы можем получить доступ к его значению в блоке then (), а если оно отклонено, мы получим ошибку в блоке catch ()

//suppose this data is coming from an api
let age = apiData('/api/id/age'); 
let promise = new Promise(function(resolve, reject){
              if(age<18)
                  reject(new Error('cannot vote'));
              else
                  resolve('can vote');
    });
promise.then(result=>console.log(result))
       .catch(err=>  console.log(err))