Розуміння різниці між null та undefined в JavaScript 🚀

pic

Привіт усім! Радий повернутися після короткої перерви. Я регулярно публікуватиму статті на цікаві теми, пов'язані з розробкою. Давайте розпочнемо.

У JavaScript дві з найпоширеніших концепцій — це null і undefined. Хоча на перший погляд вони можуть здаватися схожими, насправді вони досить різні за своїм використанням та тим, що вони представляють. Розуміння різниці між ними допоможе уникнути непорозумінь і покращити зрозумілість вашого коду. Давайте детальніше розглянемо їх відмінності та функціонування в JavaScript.

Що таке undefined?

В JavaScript, undefined — це примітивне значення, яке автоматично присвоюється змінним, які тільки були оголошені, або параметрам функцій, яким не було надано значення. Це вказує на те, що змінна була оголошена, але їй ще не присвоєно значення.

Приклади undefined

  1. Неініціалізована змінна:
let myVariable;  
console.log(myVariable); // Вивід: undefined
  1. Відсутній параметр функції:
function greet(name) {  
 console.log(name);  
}  
greet(); // Вивід: undefined
  1. Неіснуюча властивість об'єкта:
let person = { name: "Alice" };  
console.log(person.age); // Вивід: undefined

Що таке null?

null — це ще одне примітивне значення в JavaScript, яке представляє навмисну відсутність будь-якого значення об'єкта. Його часто використовують, щоб вказати, що змінна не має значення або що властивість об'єкта порожня.

Приклади null

  1. Явне присвоєння значення null:
let myVariable = null;  
console.log(myVariable); // Вивід: null
  1. Скидання значення змінної:
let person = { name: "Alice" };  
person = null;  
console.log(person); // Вивід: null

Ключові відмінності між null та undefined

  1. Тип:
  • undefined має тип undefined.
  • null має тип object.
console.log(typeof undefined); // Вивід: "undefined"  
console.log(typeof null); // Вивід: "object"
  1. Використання:
  • undefined автоматично використовується JavaScript для вказівки на відсутність значення.
  • null використовується програмістами для вказівки на навмисну відсутність значення.

3. Порівняння:

  • undefined та null є слабо рівними (==), але не строго рівними (===).
console.log(undefined == null); // Вивід: true  
console.log(undefined === null); // Вивід: false

Коли використовувати null та undefined

  • Використовуйте undefined, коли змінній не було присвоєно значення або коли параметр функції не надано.
  • Використовуйте null, коли ви хочете явно вказати, що змінна не має значення.

Приклад сценарію

Уявімо функцію, яка отримує дані користувача. Якщо дані користувача не знайдено, можна повернути null, щоб вказати, що користувач не існує.

function getUser(id) {  
 // Симулюємо отримання даних користувача  
 let user = database.find(user => user.id === id);  
 return user ? user : null;  
}  

let user = getUser(1);  
if (user === null) {  
 console.log("Користувача не знайдено");  
} else {  
 console.log("Користувач знайдений:", user);  
}

У цьому прикладі null використовується для явного вказування того, що користувача не знайдено, тоді як undefined означало б, що функція не повернула нічого.

Висновок

Розуміння різниці між null і undefined є важливим для написання зрозумілого та ефективного коду в JavaScript. Пам'ятайте, що undefined використовується JavaScript для автоматичного вказування на відсутність значення, тоді як null використовується програмістами для явного вказування на відсутність значення.
Правильне використання цих значень допоможе зробити ваш код більш читабельним та підтримуваним.

Дякую, що залишилися до кінця! Якщо ця інформація була корисною, поділіться нею з колегами-розробниками.

Щасливого кодування! 👨‍💻👩‍💻✨

Дякуємо, що є частиною нашої спільноти

Перед тим як піти:

Перекладено з: Understanding the Difference Between null and undefined in JavaScript 🚀

Leave a Reply

Your email address will not be published. Required fields are marked *