TGViewer
CodeVerse | دنیای برنامه نویسان CodeVerse | دنیای برنامه نویسان @codeverse_dev · 1.06K subscribers
Post #569 398
چرا null و undefined یکی نیستن؟ 🤔

خیلی‌ها فکر می‌کنن هر دو یعنی «هیچی»، ولی در JavaScript تفاوت مهمی دارن.

حالا undefined معمولاً یعنی یک مقدار هنوز تعیین نشده:

let username;

console.log(username);
// undefined

اما null معمولاً یعنی خود برنامه‌نویس عمداً نبودن مقدار رو مشخص کرده:

let user = null;

یعنی:

فعلاً کاربری وجود نداره.

حالا یه نکته جالب:

typeof undefined
// "undefined"

typeof null
// "object"

این رفتار null یکی از باگ‌های تاریخی JavaScript محسوب میشه و هنوز هم به همین شکل باقی مونده. 😅

اما قسمت مهم‌تر:

null == undefined
// true

null === undefined
// false

چون == تبدیل نوع انجام میده، ولی === هم نوع و هم مقدار رو بررسی می‌کنه.

توی پروژه واقعی چی؟

وقتی داده‌ای از API می‌گیری، ممکنه با هر دو مواجه بشی:

if (user.name === undefined) {
// فیلد name اصلاً وجود نداره
}

if (user.name === null) {
// فیلد وجود داره ولی مقدارش عمداً خالیه
}

البته در پروژه‌های واقعی بهتره قرارداد API مشخص کنه که برای «مقدار خالی» از null استفاده میشه یا نبودن property.

🔥 خلاصه:

undefined → مقدار تعیین نشده / property ممکنه وجود نداشته باشه

null → عمداً مقدار خالی

و برای مقایسه دقیق:

=== 

رو انتخاب کن.

@CodeVerse_dev
  • 👍 7
  • ❤ 1
More from @codeverse_dev
  1. Oct 7, 2026👨‍💻 برنامه‌نویسی با AI راحت‌تر شده؛ پس چرا بعضی Developerها خسته‌تر شده‌اند؟ طبق نظرسنجی…
  2. Oct 7, 2026🚨 وردپرس 7.1.3 منتشر شد؛ این یکی را عقب نینداز وردپرس دیروز نسخه 7.1.3 را منتشر کرد؛ یک آ…
  3. Oct 6, 2026شرکت Google وارد یک درگیری جدی با ناشران شده ⚖️ رگولاتور رقابت لهستان اعلام کرده Google را…
  4. Oct 6, 2026اگر Windows 11 داری، قبل از نصب بعضی آپدیت‌ها حواست باشد ⚠️ مایکروسافت تأیید کرده آپدیت پی…
  5. Oct 6, 2026اگر Chrome استفاده می‌کنی، این آپدیت را جدی بگیر ⚡ نسخه Stable مرورگر Chrome برای دسکتاپ ب…
  6. Oct 6, 2026🖥 سازنده محتوایی؟ ویندوزت بدون این ۵ نرم‌افزار نصفه‌ست! خب راستشو بخوای، من خودم تا چند و…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →