Devs Hive
Повернутися до всіх запитань

Яка різниця між null i undefined в JavaScript?

JuniorJavaScript
Зустрічали на інтервʼю:3 користувачів

Різниця між null i undefined - це класичне запитання на позицію junior-розробника. По своїй суті вони схожі і означають, що значення немає , але якщо копнути трошки глибше, різниця між ними стає очевидною. Отже, розберемо їх по черзі:

undefined

Цей тип даних означає, що значення не задано. Тобто, коли ми створюємо змінну і не присвоюємо значення, доступаємося до поля обʼєкта, якого не існує, чи банально - функція, яка не повертає значення явно, завжди повертає undefined.

null

Він означає порожнє значення, і в цілому він схожий на undefined, з однією важливою відмінністю - null не існує в природі JS і може зʼявитися як значення тільки тоді, коли розробник явно його задав.

Наприклад, в базі даних не знайдено продукту за ID, і ви явно повертаєте null, тим самим даєте зрозуміти, що ви шукали і нічого не знайшли, тому в якості значення підставили null.

function findProductById(id) {
const products = [{ id: 1, name: "Phone" }]; // емулюємо базу даних

const product = products.find(p => p.id === id);

return product || null;
}

Зустрічав на інтервʼю?

Коментарі (0)

Увійдіть, щоб залишити коментар

Поки що немає коментарів. Будьте першим!