JavaScript. Змінні. Примітивні типи даних. Коментарі. Константи

Змінні. Примітивні типи даних. Коментарі. Константи. Ключові слова var, const. Оператор typeof


Зміст


Пошук на інших ресурсах:

1. Змінні та типи даних. Загальні поняття

Будь-яка програма на мові JavaScript працює з даними. Дані зберігаються у змінних, які оголошуються та використовуються у програмі. Іншими словами, змінна є коміркою пам’яті, що зберігає дані.

Будь-яка змінна в мові JavaScript визначається наступними характеристиками:

  • змінна має ім’я. За цим іменем можна доступитись до даних, що зберігаються в змінній. До імен змінних ставляться певні вимоги (див. нижче);
  • змінна має визначений тип даних.

Тип даних змінної визначає:

  • спосіб представлення (кодування) даних в пам’яті. Змінні різних типів кодуються по різному;
  • розмір пам’яті в байтах, який займає змінна. Наприклад, рядкові та числові типи займають різну кількість пам’яті в програмі.

 

2. Оголошення змінної. Ключове слово var. Базові (примітивні) типи даних

При оголошенні змінної використовується ключове слово var. Оголошення змінної може бути:

  • з початковою ініціалізацією. Термін “ініціалізація” означає, що змінній присвоюється початкове значення з допомогою операції присвоєння;
  • без початкової ініціалізації. У цьому випадку змінній нічого не присвоюється. Така змінна за замовчуванням отримує тип undefined.

Відповідно до двох способів оголошення змінної, розрізняють дві нижченаведені загальні форми.

Якщо при оголошенні змінної її потрібно ініціалізувати, то використовується наступна загальна форма

var variableName = value;

тут

  • variableName – ім’я змінної, яка оголошується;
  • value – значення, яке отримує змінна при оголошенні. На основі значення value буде визначено тип цієї змінної. Якщо value це рядок, то змінна отримає тип String, якщо value це число, то змінна отримає тип Number і т.д.

Після ініціалізації змінні можуть отримувати значення наступних базових (примітивних, простих) типів даних:

  • Number – тип даних, що описує числа. Тут немає строгого поділу на цілі числа та числа з плаваючою комою як в інших мовах програмування;
  • String – тип даних, що описує текстові дані. У мові JavaScript немає окремого типу даних на окремий символ (типу char немає);
  • Boolean – логічний тип даних. Змінні цього типу отримують тільки два можливі значення: true (істина) та false (фальш, не істина);
  • Null – тип, що може приймати тільки одне значення null;
  • Undefined – тип, що встановлюється у випадку, коли змінна оголошена (var) але не ініціалізована значенням. Значення змінній буде присвоєне пізніше;
  • Bigint – тип, який призначений для представлення великих цілих чисел значення яких виходять далеко за значення типу Number;
  • Symbol – визначає унікальне незмінне примітивне значення (атом).

Існують також об’єктні типи, що описують об’єкти, функції, масиви, помилки, регулярні вирази, дату та інші програмні елементи. Ці типи не є предметом розгляду даної теми.

Якщо змінна оголошується без початкової ініціалізації, то загальна форма оголошення наступна:

var variableName;

тут

  • variableName – ім’я змінної, яка оголошується. Для цієї змінної встановлюється тип undefined, що означає невизначений тип даних.

Допускається безпосереднє задавання значення undefined для змінної

var variableName = undefined;

У програмі оголошення змінних можуть бути в одному рядку. При цьому ці оголошення розділяються комою.

var varName1, varName2, varName3;

 

3. Вимоги до імен змінних

У JavaSctipt до імен змінних чи інших ідентифікаторів програми ставляться наступні вимоги:

  • ім’я змінної (ідентифікатора) може містити символи латинських букв верхнього (‘A’‘Z’) та нижнього (‘a’‘z’) регістрів, цифр ‘0’‘9’ та символу підкреслення ‘_’;
  • ім’я змінної не може починатись з цифри;
  • ім’я змінної також може містити символ ‘$’.

Мова JavaScript є чутливою до регістру. Це означає, що імена

abc
Abc
aBC
ABC

є різними іменами.

 

4. Приклади оголошення змінних різних типів

Правильні оголошення змінних

// Оголошення змінних різних типів
var x = 2.88;   // тип Number
var MAX_VALUE = 1000; // тип Number
var b = false; // тип Boolean
var z;         // z = Undefined (тип Undefined)
var Arr = null; // тип Object

// Оголошення декількох змінних типу String в одному рядку
var Text = "Hello, world!", Url = "www.bestprog.net"; 

// Оголошення декількох змінних типу Number в одному рядку
var $Pi = 3.1415, G = 9.806, $E = 2.718; 

// Оголошення змінних типу Bigint
var Nm = 9007199254740992n;
var Nm2 = 20n;

// Тип Symbol
var sm = Symbol("abc")  

Неправильні оголошення змінних

// Неправильні оголошення змінних
var 1f = 25; // ім'я починається з цифри
var f 3 = 28; // символ пробіл між f та 3

 

5. Використання змінних у програмі. Що означає термін “не строго типізована мова”? Приклад

Мова JavaScript не є строго типізованою на відміну від таких мов як C++, Java, C# та інших. Це означає, що оголошена у програмі змінна може отримувати (зберігати) дані різних типів. У мовах C++, Java, C# та інших, при оголошенні змінна має строго визначений тип (тільки один) і зберігає його до завершення області дії цієї змінної.

У мові JavaScript змінна при оголошенні може мати один тип. Потім, у процесі виконання програми, змінна може отримати інший тип при виконанні операції присвоєння =. Процес отримання змінною значень різних типів може повторюватись будь-яку кількість разів.

Приклад.

'use strict'

// 1. Оголошення змінної a
var a; // Тип змінної undefined

// 2. Змінній a присвоюється число (ціле)
a = 110; // Тип змінної number

// 3. Змінній a присвоюється дійсне число
a = 2.55; // Тип number

// 4. Змінній a присвоюється рядок
a = "abcd"; // Тип string

// 5. Змінній a присвоюєтья значення null,
a = null; // Тип object

// 6. Змінній a присвоюється логічний тип boolean
a = true;

 

6. Оператор typeof(). Отримати тип змінної

З допомогою оператора typeof() можна отримати назву типу (тип), що встановлюється для змінної. Загальна форма виклику оператора typeof() наступна

typeof(value)

тут

  • value – деяка змінна, літерал або вираз.

Приклад. У прикладі визначаються типи змінних, літералів та виразів за допомогою оператора typeof.

// Оператор typeof
var a = 20;
var tp_a = typeof(a); // tp_a має тип number

var str = 'Hello';
var tp_str = typeof(str); // тип string

var tp_expr = typeof(5 + true + 2.8) // тип number
alert(tp_expr)

tp_expr = typeof('A' + 8) // тип string
alert(tp_expr)

 

7. Коментарі в JavaScript

У будь-яку програму доцільно додавати пояснення до фрагментів коду у вигляді коментарів. Використання коментарів полегшує розуміння складових програми та її подальший супровід. Компілятор чи інтерпретатор не сприймає коментарі як програмний код який потрібно опрацьовувати. Коментарі просто ігноруються.

У мові JavaScript є 2 види коментарів:

  • однорядковий – розміщується за парою символів //;
  • багаторядковий – розміщується між парами символів /* та */.

Приклад.

// Це є однорядковий коментар
// var a = 20; - це також коментар

var a = 20; // оголошення змінної a - це є коментар

/* Це є
багаторядковий
коментар
*/

 

8. Зарезервовані слова JavaScript

Не всі імена можна задавати в якості імен змінних, функцій, методів, міток циклів чи об’єктів. Ці імена використовуються в JavaScript і є зарезервованими. Нижче наведено перелік цих імен в алфавітному порядку

abstract   else         instanceof     switch
boolean    enum         int            synchronized
break      export       interface      this
byte       extends      long           throw
case       false        native         throws
catch      final        new            transient
char       finally      null           true
class      float        package        try
const      for          private        typeof
continue   function     protected      var
debugger   goto         public         void
default    if           return         volatile
delete     implements   short          while
do         import       static         with
double     in           super

Якщо спробувати використати в програмі одне з вищенаведених імен, то це буде сприйнято як помилка.

 

9. Оголошення констант. Ключове слово const

У мові JavaScript можна оголошувати константи. Для цього використовується ключове слово const. Загальна форма оголошення константи наступна

const constName = value;

тут

  • constName – ім’я константи;
  • value – значення, яке отримує константа.

Після оголошення константи constName спроба зміни значення константи

constName = anyValue;

буде вважатися помилкою. Змінювати будь-яку константу до закінчення сценарію заборонено.

Імена формування констант такі самі як і для змінних (дивіться пункт 5).

Приклад.

// Константи. Оголошення та використання констант
const Pi = 3.1415;            // тип константи Number
const Yes = true, No = false; // Boolean
const Numbers = "0123456789"; // String
const N_Months = 12;          // Number
const MaxYearsOfUniverse = 123456789012345678901234567890n // тип Bigint

 


Споріднені теми