Javascript типи даних
В процесі роботи комп'ютерні програми маніпулюють значеннями, такими як число 7 або текст "HelloWorld!". Кожне значення, яке може бути представлено і оброблено в мові програмування відноситься до певного типу даних. Тип даних визначає типи значень, які використовуються в мові програмування.
- string - текстові рядки (зазвичай їх називають просто - рядки)
- number - числа
- boolean - логічні (булеві) значення
Так само до простих типів відносяться два спеціальних значення:
До складових типів даних відносяться:
Різниця між простими і складеними типами
Різниця між простими і складеними типами проявляється при копіюванні значень.
null і undefined
Тип null має всього одне значення - null. Значення null є посиланням на порожній об'єкт і має спеціальне призначення - зазвичай воно використовується для ініціалізації змінної, якій згодом буде присвоєно об'єкт.
Тип undefined має всього одне значення - undefined. Значення undefined вказує на початкове відсутність будь-якого значення. Отримати значення undefined можна наступним чином:
- При зверненні до змінної, яка була оголошена, але не була инициализирована.
- При зверненні до неіснуючого властивості об'єкта.
- При зверненні до неіснуючого елементу масиву.
- При зверненні до параметрів функції, що не були ініційовані аргументами при виконанні функції.
- Повертається функціями, які не мають значення, що повертається.
- Повертається оператором typeof, якщо операндом є неіснуюча змінна.
Ідентифікатор undefined є ім'ям визначеної глобальної змінної, яка инициализирована значенням undefined. Мінлива undefined доступна тільки для читання.
об'єкти обгортки
Кожен раз, коли в програмі робиться спроба звернутися до властивості або методу значення примітивного типу, інтерпретатор тимчасово перетворює примітивне значення в об'єкт відповідного типу. Тимчасові об'єкти, в які перетворюються значення примітивного типу, називають об'єктами обгортці. Ці об'єкти використовуються інтерпретатором для доступу до потрібного властивості або методу. Відразу після звернення до властивості або методу об'єкт обгортка знищується. Об'єкти обгортки створюються тільки для значень типу number. string і boolean. Значення null і undefined не мають об'єктів обгорток: будь-які спроби звернутися до властивостей цих значень будуть викликати помилку.
Якщо для об'єкта обгортки спробувати встановити нову властивість то, нове властивість не буде збережено, так як об'єкт обгортка знищується відразу після того, як виконає свою роботу:
Об'єкти обгортки можна розглядати просто як реалізацію зручності для роботи зі значеннями примітивного типу та взагалі не думати про них.
З цією темою дивляться: