JS властивість Global.undefined
Загальний опис
undefined - це спеціальне значення в JavaScript, яке вказує на те, що змінна була оголошена, але їй не було присвоєно жодного значення. Воно також повертається функцією або виразом, якщо вони не повертають жодного значення.
Перша й найважливіша річ, яку потрібно розуміти про undefined, - це те, що це не метод чи властивість. Це примітивний тип даних в JavaScript, який є частиною стандартної специфікації ECMAScript.
undefined часто використовується для перевірки, чи була змінна ініціалізована. Це допомагає програмістам виявляти змінні, які можуть не мати дійсних значень, та запобігти потенційним помилкам в програмах.
Як і де використовувати undefined?
Перевірка ініціалізації змінної:
let example; if (example === undefined) { console.log("Змінна 'example' ще не ініціалізована."); }Перевірка відсутності властивостей об'єкта:
const obj = {}; if (obj.property === undefined) { console.log("Властивість 'property' відсутня у об'єкті 'obj'."); }Повернення функцією: якщо функція не повертає значення за допомогою оператора
return, вона автоматично повертаєundefined.
Особливості та прийоми роботи:
Не присвоюйте змінним значення
undefined. Натомість використовуйтеnullабо інші значення для представлення "відсутності значення" чи "невідомого стану".Тип
undefinedта значенняnull. Важливо розрізнятиundefinedтаnull. Вони обидва представляють "відсутність значення", але використовуються в різних контекстах.
let notDefined;
let isNull = null;
console.log(notDefined === undefined); // true
console.log(isNull === undefined); // false
console.log(isNull === null); // true
- Тип
undefinedу порівнянні з іншими:undefinedє своїм власним типом. Однак при використанні двійкового оператора порівняння (==) він вважається рівнимnull.
| Порада: | Якщо вам потрібно перевірити, чи змінна була призначена, використовуйте оператор типу
|
| Порада: | Коли розробляєте функції, ви можете використовувати
|
| Порада: | У JavaScript існує різниця між |
| Порада: | У старіших версіях JavaScript |
| Нотатка: | В TypeScript, надбудові JavaScript, тип |
Синтаксис
undefined
Значення
Return
Переглядачі
| Переглядач | |||||
|---|---|---|---|---|---|
1 |
1 |
1 |
3 |
12 |
| Переглядач | ||||
|---|---|---|---|---|
4.4 |
18 |
4 |
1 |
| Переглядач | ||
|---|---|---|
0.10.0 |
1.0 |
Приклади
У цьому прикладі ми об'являємо змінну testVar без присвоєння їй якого-небудь значення. Тому її початкове значення буде undefined. Після цього ми використовуємо умовний оператор для перевірки, чи є значення змінної рівним undefined.
// Об'являємо змінну без призначення значення
var testVar;
// Перевіряємо, чи змінна є undefined
if (testVar === undefined) {
console.log("Змінна testVar є undefined");
} else {
console.log("Змінна testVar має значення");
}
Цей приклад демонструє, як можна використовувати undefined для роботи з опціональними параметрами функції. У функції getUserName, якщо аргумент name не передано, його значення за замовчуванням буде undefined. Тому, якщо name є undefined, функція повертає слово "Гість". У іншому випадку вона повертає значення аргумента name.
// Функція, яка повертає ім'я користувача або "Гість", якщо ім'я не вказано
function getUserName(name) {
if (name === undefined) {
return "Гість";
}
return name;
}
console.log(getUserName()); // Виводить: "Гість"
console.log(getUserName("Іван")); // Виводить: "Іван"
