تغییرات اخیر

در اینجا اطلاعیه‌ها، نسخه‌ها و تغییرات جدید لیارا فهرست می‌شوند.

آنچه در این مقاله می‌خوانید

    تفاوت null و undefined در جاوااسکریپت


    ۱۹ تیر ۱۳۹۹
    تفاوت null و undefined در جاوااسکریپت

    ابتدا بیایید در مورد شباهت‌های میان این دو صحبت کنیم. null و undefined، هر دو از انواع اساسی متغیرها هستند.

    منظور از undefined این است که متغیری را تعریف کرده‌ایم، اما مقداری را به نداده‌ایم، به عبارتی تنها آن را تعریف کرده‌ایم.

    let age
    console.log(age)
    // Output: undefined
    
    let age = null
    console.log(age)
    // Output: null

    به این نکته هم توجه داشته باشید که اگر بخواهید از متغیری که هنوز آن را تعریف نکرده‌اید استفاده‌ای کنید، با خطای زیر روبرو خواهید شد:

    Error: <variable> is not defined

    اما این خطا به این معنا نیست که این متغیر undefined است.

    چگونه بررسی می‌کنید که یک متغیر null است یا خیر؟ از عملگر مقایسه‌ای استفاده کنید، برای مثال:

    age === null

    همچنین برای undefined:

    age === undefined

    در هر دو مورد می‌توانید از راه زیر استفاده کنید:

    if (!age) {
        // ...
    }

    این روش هر دو مورد، یعنی هم null و هم undefined را شامل می‌شود.

    همچنین می‌توانید از عملگر typeof هم استفاده کنید:

    let age
    typeof age //’undefined’

    null هم‌ارز یک object است، حتی با اینکه یکی از انواع اساسی متغیرهاست.

    let age = null
    typeof age //’object’

    منبع: https://flaviocopes.com/javascript-difference-null-undefined

    به اشتراک بگذارید

    برچسب‌ها: