Блог

Классы в JAVASCRIPT

7 years ago
4.6K
Sergei Nikonov

 

Классы в JAVASCRIPT

У языка Javascript достаточно непривычный для программистов синтаксис, особенно, если раньше они писали определенные программы, пользуясь PHP, Python, а также, C# или Java. Создание класса в Javascript требует определенных знаний, которые можно получить после прочтения данной статьи.

 

 

Исторические факты

Javascript разработали в середине 1995 года, проектом занимались специалисты из компаний Netscape, а также Sun Microsystems. На начальном этапе возникли сложности с выбором названия - проект окрестили "Mocha", но затем появились варианты LiveScript и JavaScript, было принято решение остановиться на втором варианте.

Компания ECMA стандартизировала Javascript, после чего он получил название ECMAScript.

 

Относительно недавно появился новый стандарт Javascript ECMAScript 6 с сильно измененным синтаксисом. Можно отметить появление в синтаксисе class, а также других слов, которые более понятны ООП программистам. Но сегодня есть большая проблема с браузерами, которые не могут поддерживать данный стандарт и, вероятно, только к 2020 году это будет исправлено.

 

интерактивный курс modern javascript

 

Если вам не терпится ознакомиться с особенностями ECMAScript 6 - можно прибегнуть к помощи TypeScript, языку программирования, который разработала компания Майкрософт.

 

Создание класса в JavaScript с использованием ООП стиля

Сегодняшний стандарт Javascript не поддерживает привычных классов, что заставляет создавать имитацию, чтобы было удобнее писать определенный код.

Ниже на примерах покажем, как будут выглядеть классы, созданные в разных языках программирования.

 

Java:

public class Human {

    String name;

    public Human(String name) {
            this.name = name;
    }

    public void setName(String name) {
            this.name = name;
    }

    public String getName() {
            return this.name;
    }


    public static void main(String[] args) {
            Human human = new Human("John");
            human.setName("Eddie");
            System.out.println(human.getName());
    }

}

 

Если рассматривать класс Human, можно выделить конструктор, принимающий String параметр имя при создании класса. Можно заметить setter, а также getter - возможность устанавливать и возвращать переменную name.

 

Рассмотрим язык Javascript, как здесь создать такой же класс:

// construct
function Human(name){
   this.name = name;
}

// setter
Human.prototype.setName = function(name){
	this.name = name;
};

// getter
Human.prototype.getName = function(){
	return this.name;
};

/* --------------------------- */
var human = new Human("John");
human.setName("Eddie");
alert(human.getName());

 

Из примера видно, что создание класса в Javascript позволяет сделать код более удобным и читаемым, а это значительно упрощает работу программисту и делает прочтение чужого кода более быстрым.

 

Выводы

В классическом Javascript нет поддержки привычных классов, на простых примерах мы показали, как можно создать имитацию класса в Javascript, чтобы сделать работу с кодом более удобной. Изучить особенности синтаксиса и научиться писать программы на языке программирования Javascript может каждый.