dir.by  
  Поиск  
Программирование, разработка, тестирование
JavaScript - язык программирования для HTML
JavaScript стандарт ES6. Издан в 2015 году. Поддерживается НЕ всеми браузерами. Синонимы ES6, ES2015, ECMAScript 2015
class | Класс В JavaScript. Пример: class Book {...} ... var obj1 = new Book(); | стандарт ES6
  Посмотрели 7001 раз(а)    
 class | Класс В JavaScript | стандарт ES6 
последнее обновление: 1 августа 2020
С появлением стандарта ES2015 (ES6) В JavaScript появился тип класс.

Класс может содержать:
• конструкторы у класса
• переменные
• функции
• статические функции
Определение (декларация) класса
Класс определяется словом class
Пример
  Html  
<script>
     class MyBook
     {
          // конструктор у класса
          constructor(name)
          {
               // this.имя переменной = ...
               // это создать переменную для класса

               // создаем переменные для класса
               this.Name = name; // переменная содержит текст
               this.Author = "";   // переменная содержит текст
               this.Price = 0;      // переменная содержит число
               this.Valuta = '';    // переменная содержит текст

               // создаем переменную для класса
               this.MyInfo = // переменная содержит наборо свойств
               {
                    // набор свойств
                    PagesCount: 90,
                    HasPictures: true
               };
          }

          // функция у класса
          ShowMyMessage(title)
          {
               alert(title + " " + this.Name + " " + this.MyInfo.PagesCount);
          }
     }

     // создаем объект класса
     var obj1 = new MyBook("Mathematics");

     // вызываем функцию у класса
     obj1.ShowMyMessage("My Book");
     // На экране увидим "My Book Mathematics 90"
</script>
Переменные в классе
На заметку! Переменные для класса могут создаваться не только в конструкторе класса.
Переменные для класса могут создаваться в любой функции класса.

Чтобы создать переменную для класса нужно написать:
this.имя переменной = ...
это нужно писать внутри функции
  Html  
<script>
     class MyBook
     {
          // функция у класса
          Calculate()
          {
               this.Price = 100;
          }
     }

     // создаем объект класса
     var obj1 = new MyBook;

     // вызываем функцию у класса
     obj1.Calculate();

     // выводим на экран переменную у класса
     alert(obj1.Price);
     // На экране увидим 100
</script>
Статические функции в классе
Слово static определяет статическую функцию для класса.
Статическая функция может вызываться без создания объекта класса.
  Html  
<script>
     class MyBook
     {
          // функция у класса
          static Show()
          {
               alert("Hello!");
          }
     }

     // вызвать статическую функцию у класса
     MyBook.Show();
     // На экране увидим Hello!
</script>
Определение класса
Ошибка! Если сначала создавать объект класса, а потом идет определение класса.
  Html  
<script>
     // создать обект класса
     var obj1 = new MyBook("Mathematics"); // Error! Uncaught ReferenceError: MyBook is not defined

     // определение класса
     class MyBook
     {
          // конструктор класса
          constructor(name)
          {
               this.Name = name;
          }
     }
</script>
Класс может быть безымянным
  Html     Пример 1 (безымянный класс)
<script>
     // определяем безымянный класса
     var myClass1 = class
     {
          // конструктор у класса
          constructor(name)
          {
               this.Name = name;
          }

          // функция у класса
          ShowMyMessage()
          {
               alert(this.Name);
          }
     };

     // создаем объект класса
     var obj1 = new myClass1("Fantastic");

     // вызываем функцию у класса
     obj1.ShowMyMessage();
     // На экране увидим "Fantastic"
</script>
  Html     Пример 2 (безымянный класс)
<script>
     // создаем объект безымянного класса
     var obj1 = new class
     {
          // конструктор у класса
          constructor(name)
          {
               this.Name = name;
          }

          // функция у класса
          ShowMyMessage()
          {
               alert(this.Name);
          }
     }("Fantastic");

     // вызываем функцию у класса
     obj1.ShowMyMessage();
     // На экране увидим "Fantastic"
</script>
Наследование класса
Для наследования класса В JavaScript нужно использовать слово extends
  Html  
<script>
     // определение класса
     class Cat
     {
          // конструктор у класса
          constructor()
          {
          }

          // функция у класса
          Say()
          {
               alert("Мяу");
          }
     }
    
     // класс Tiger наследуется от класса Cat
     class Tiger extends Cat
     {
          // конструктор у класса
          constructor()
          {
               // вызываем конструтор у базового класса
               super();
          }

          // функция у класса
          Say()
          {
               // вызываем функцию у базового класса
               super.Say();

               alert("Рычать");
          }
     }

     // создаем объект класса
     var obj1 = new Tiger();
     obj1.Say();
     // На экране увидим "Мяу" "Рычать"
</script>
На заметку!
Слово super нужно использовать чтобы вызвать базовый метод или конструктор.

Важно!
Если вы определили конструктор в наследуемом классе, то должны вызывать конструктор базового класса.
  Html     Пример (нет ошибок)
class Tiger extends Cat
{
     // конструктор у класса
     constructor()
     {
          // вызываем конструтор у базового класса
          super();
     }
}
Если не вызовите конструктор базового класса то будет ошибка.
  Html     Ошибка
class Tiger extends Cat
{
     // конструктор у класса
     constructor()
     {
          // Ошибка! Конструтор базового класса не вызвали
          // Uncaught ReferenceError: Must call super constructor in derived class before accessing 'this' or returning from derived constructor
     }
}
 
← Предыдущая тема
В текстовой переменной можно писать выражения с переменными (форматирование, интерполяция строки). Пример: var myText = `Hello ${a}` | JavaScript стандарт ES6
 
Следующая тема →
promise В JavaScript | стандарт ES6
 
Ваши Отзывы ... комментарии ...
   
Вашe имя
Ваш комментарий (www ссылки может добавлять только залогиненный пользователь)

  Объявления  
  Объявления  
 
В каком редакторе (программе) удобно писать JavaScript код?
Новое приложение
Создаем новое приложение JavaScript в текстовом редакторе
Создаем новое приложение JavaScript в Visual Studio Code. Отладка приложения. Смотрим в отладке как по шагам выполняется JavaScript
Отладка JavaScript, HTML
Отладка JavaScript в Google Chrome. Используем debugger
Как узнать (увидеть) где ошибка при выполнении HTML, JavaScript в Google Chrome
Отладка JavaScript В Google Chrome. Используем console.log("Hello!")
JavaScript стандарт ES5. Издан в 2009 году. Поддерживается всеми браузерами
Функция
Функция В JavaScript. Пример: function CalculateSum(value1, value2) { ... } | стандарт ES5
Функция return || В JavaScript. Пример: function getPersonName(name) { return name || "Evgen" } | стандарт ES5
Вызов функции до ее определения (Hoisting) В JavaScript | стандарт ES5
Переменные внутри функции (время жизни переменных внутри функции) JavaScript | стандарт ES5
Передача параметров по значению и по ссылке в функцию В JavaScript | стандарт ES5
Как узнать ... существует ли функция по названию В JavaScript? Пример: typeof calcSum == "function" | стандарт ES5
Функция описанная внутри функции. JavaScript | стандарт ES5
Безымянная функция
Безымянная функция В JavaScript . Использование безымянной функции: создаем новую переменную и новой переменной назначаем безымянную функцию. Пример: var myFunc1 = function (a, b) { return a + b; } ; | стандарт ES5
Безымянная функция В JavaScript . Использование безымянной функции: безымянную функцию передаем как параметр в другую функцию. Пример: Calculate(15, 7, function(v1, v2) {return v1+v2;}); | стандарт ES5
Само-вызывающая безымянная функция
Само-вызывающая безымянная функция В JavaScript. Где используется? Используется в Yandex рекламе. Пример: ( function(){ ... } )(); | стандарт ES5
Создаем файл js с объектом содержащий экспортные переменные и функции. Это пример использования само-вызывающей безымянной функции | стандарт ES5
Лямбда функция (сокращенный вариант безымянной функции)
Лямбда функция В JavaScript . Использование лямбда функции. [Пример1] var myFunc1 = (a, b) => a + b; [Пример2] Calculate(15, 7, (v1, v2) => {return v1+v2;}); | стандарт ES5
Переменные
Переменные В JavaScript (текст, число, флаг, дата и время) | стандарт ES5
Доступ к переменным до их определения (Hoisting) В JavaScript | стандарт ES5
Область видимости переменных var, let, const В JavaScript | стандарт ES5
Текст, строки В JavaScript
Текст В JavaScript. Класс String. Пример: var myText = String("World"); | стандарт ES5
Length (длина строки В JavaScript) | стандарт ES5
Функция replace(text1, text2) заменить текст В JavaScript | стандарт ES5
Функция toUpperCase() переводит текст в верхний регистр JavaScript | стандарт ES5
Функция toLowerCase() перевод текста в нижний регистр JavaScript | стандарт ES5
Функция split(delimiter) разделяет строку на подстроки JavaScript | стандарт ES5
Функция charAt(position) получить символ по позиции JavaScript | стандарт ES5
Функция substr(pos, len) возвращает подстроку JavaScript | стандарт ES5
Функция slice(pos1, pos2) возвращает подстроку JavaScript | стандарт ES5
Функция substring(pos1, pos2) возвращает подстроку JavaScript | стандарт ES5
Функция indexOf(text, startPos) ищет подстроку и возвращает индекс JavaScript | стандарт ES5
Функция startsWith(text) проверяет, начинается ли строка с указанной подстроки JavaScript | стандарт ES5
Функция trim() удалить пробелы в начале и в конце строки JavaScript | стандарт ES5
Функция padStart(length, symbol) добавляет в начале строки символы до нужной длины строки JavaScript | стандарт ES5
Функция padEnd(length, symbol) добавляет в конце строки символы до нужной длины строки JavaScript | стандарт ES5
В текстовую переменную можно назначить текст как много строк. Пример: var myText = `Hello \n Thanks \n Bye` | JavaScript стандарт ES6
В текстовой переменной можно писать выражения с переменными (форматирование, интерполяция строки). Пример: var myText = `Hello ${a}` | JavaScript стандарт ES6
Регулярные выражения
Регулярные выражения в JavaScript | стандарт ES5
Пишем регулярное выражение чтобы удалить все специальные символы кроме букв и цифр | Regex JavaScript | стандарт ES5
Числа и математические функции
Числа В JavaScript. Конвертация текста в число. Округление числа. Перевод шестнадцатиричного в десятичное число. | стандарт ES5
Математические функции из библиотеки Math: Sin, cos, log, pow и так далее В JavaScript | стандарт ES5
Дата и время
Дата и время (год, месяц, число, часы, минуты, секунды) В JavaScript. Класс Date | стандарт ES5
Массив
Массив В JavaScript это [] или класс Array | стандарт ES5
Что значит 3 точки ...items | Пример 1: Math.max(...prices) | Пример 2: books.push(...items) | JavaScript, стандарт ES5
Разница между push(items) и push(...items) | Добавление массива в массив В JavaScript | стандарт ES5
Найти max цены в сложном массиве: [ {name:"Tomate", price:10}, {name:"Apple", price:17}, {name:"Orange", price:15} ] в JavaScript | стандарт ES5
Найти min цены в сложном массиве: [ {name:"Tomate", price:10}, {name:"Apple", price:17}, {name:"Orange", price:15} ] в JavaScript | стандарт ES5
Коллекции Map и Set
Коллекция "ключ-значение" В JavaScript. Класс Map | стандарт ES5
Коллекция уникальных значений В JavaScript. Класс Set | стандарт ES5
Объект {набор свойств и функций}
{} это объект В JavaScript. Объект содержит набор свойств и функции. Пример var book = {Name: "Волшебник Средиземноморья", Price: 120}; | стандарт ES5
{...} = объект в JavaScript заполняем из переменных класса или другим объектом. Пример: const {name, total, price} = b.myProps; | стандарт ES5
Класс (это функция с использованием new) | стандарт ES5
Класс в JavaScript это обычная функция-конструктор. Такая функция-конструктор содержит простые данные, объекты, внутренние функции В JavaScript. Для создания объекта класса используется new Пример: function Book() { ... } ... var obj1 = new Book(); | стандарт ES5
Инкапсуляция переменных (скрытие переменных для доступа) в функции (в виде класса) В JavaScript | стандарт ES5
prototype - это набор функций, переменных для всех экземпляров класса (в виде функции) В JavaScript | стандарт ES5
try catch
Зачем нужно использовать try и catch В JavaScript? | стандарт ES5
Замыкание (closure) В Javascript
Что такое замыкания (closure) В JavaScript ? Стандарт ES5
Управление памятью в JavaScript
Управление памятью в JavaScript | стандарт ES5
Примеры движение картинки и анимация
Анимация человечка на месте. Используем HTML элемент <div>. Для анимации используем CSS стили: "animation", "background-image", "background-position", "keyframes" | стандарт ES5
Анимация человечка в движении (sprite). Используем HTML элементы <div>, <img>. Для анимации используем CSS стили: "animation", "background-image", "background-position", "keyframes" | стандарт ES5
Рисуем картинку с движением. Используем HTML элемент <canvas>. Для движения используем JavaScript: var img = new Image(), img.src = url, drawImage, timer, window.setInterval | стандарт ES5
Рисуем картинку с движением и анимацией (sprite). Используем HTML элемент <canvas>. Для движения используем JavaScript: var img = new Image(), img.src = url, drawImage, timer, window.setInterval | стандарт ES5
Примеры
Как определить устройство (планшет, компьютер, телефон) сейчас используется в JavaScript, HTML | стандарт ES5
Редактор текста пишем на HTML, JavaScript | стандарт ES5
Делаем Popup используя HTML и Javascript
Как сделать Popup окно в HTML странице | Javascript, HTML, CSS
Моя игра (HTML, JavaScript)
Моя игра "Wizard World" | HTML, JavaScript
PDF readers. Загрузка и отображение файла PDF (JavaScript, HTML)
PDF reader. Загрузка и отображение файла PDF (adobe JavaScript, HTML) | PDF JavaScript implemented by Adobe
PDF reader. Загрузка и отображение файла PDF (JavaScript, HTML) | PDF JavaScript implemented by Mozilla
JavaScript стандарт ES6. Издан в 2015 году. Поддерживается НЕ всеми браузерами. Синонимы ES6, ES2015, ECMAScript 2015
В текстовой переменной можно писать выражения с переменными (форматирование, интерполяция строки). Пример: var myText = `Hello ${a}` | JavaScript стандарт ES6
class | Класс В JavaScript. Пример: class Book {...} ... var obj1 = new Book(); | стандарт ES6
promise В JavaScript | стандарт ES6

  Ваши вопросы присылайте по почте: info@dir.by  
Яндекс.Метрика