Javascript - это язык, разработанный для Интернета и улучшенный, чтобы делать слишком много увлекательных вещей.
С начала JS в 90-х годах до наших дней произошло слишком много улучшений.
В этой статье приведены быстрые примеры, объясняющие разницу между наиболее известными версиями JS ECMAScript 5 и ECMAScript 6.
Класс против прототипа:
В JS es5 концепции ООП применимы с тем же мышлением и языком ООП, но с другим способом реализации.
Класс в es5 - это объект (объект JS), и этот объект имеет свойство под названием Prototype, содержащее все методы, свойства можно использовать, и как только мы создадим новый экземпляр класса, можно будет использовать все свойства в прототипе
Пример:
В этом коде у нас есть класс с именем Car, у этого класса есть общедоступное свойство с именем name со строкой типа, метод set принимает новое имя и обновляет свойство name и метод get для возврата текущего имени автомобиля.
Все методы внутри этого прототипа могут получить доступ к свойствам и методам класса с помощью этого ключевого слова.
имя класса одновременно является исполнителем, и как только мы набираем
new Car (); мы создаем новый класс автомобиля в форме объекта и обязательно можем передать аргументы конструктору
В случае, если нам нужно использовать es6 для разработки того же класса с использованием класса ООП, код будет изменен следующим образом
в первом примере, если у нас есть два прототипа, и нам нужно расширить один с помощью другого, мы столкнемся с проблемой, потому что у нас нет расширений в JavaScript в реальном прототипе, это просто объект Js (ассоциативный массив и неизменяемый), поэтому мы можем найти обходной путь путем зацикливания
но в es6 с классическим наследованием ООП все будет проще
пример :
2- Функция стрелки
в es5 функция может действовать как функция, класс и методы
пример функции:
пример класса и метода:
в следующей статье мы завершим арест разницы между Java-скриптом es5 и es6