تست هوش با بازی اعداد شروع شد. از مسابقه جا نمونی 😀

اینجا کلیک کن
بریم برای شروع

هویسینگ (Hoisting) در متغیرها و توابع - آزمون آنلاین جاوا اسکریپت

تعداد سوال 20
قیمت رایگانــ
زمانسنج ندارد
رده‌سنی همه سنین
وضعیت فعال
نظرات ندارد

آزمون جاوااسکریپت - هویسینگ (Hoisting) در متغیرها و توابع

این یک آزمون چالش‌برانگیز در مورد یکی از مفاهیم کلیدی و گاهی گیج‌کننده در جاوااسکریپت، یعنی هویسینگ، هست. قراره با هم بررسی کنیم که چطور جاوااسکریپت کد رو تفسیر می‌کنه و چه تأثیری روی متغیرها و توابع داره.

هویسینگ (Hoisting) در متغیرها و توابع - آزمون آنلاین جاوااسکریپت

با شرکت در این کوییز، می‌تونی میزان تسلط خودت رو در مورد این موضوع بسنجی و همزمان دانش‌ات رو درباره‌ی نکات ظریف هویسینگ افزایش بدی.

سوالات طوری طراحی شدن که تو رو به چالش بکشن و باعث بشن عمیق‌تر به این مفهوم فکر کنی. این آزمون توسط تیم طراحی آزمون‌های پاموه آماده شده تا بهت کمک کنه مسیر یادگیری‌ات رو بهتر ادامه بدی.


هویسینگ چیست؟ یک نگاه دقیق‌تر

هویسینگ به زبان ساده، فرآیندی هست که در اون مفسر جاوااسکریپت، اعلان (declaration) متغیرها و توابع رو به بالای اسکوپ (scope) فعلی می‌بره. این اتفاق قبل از اجرای کد می‌افته.

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

اما یه نکته مهم اینه که فقط خود اعلان‌ها منتقل میشن، نه مقداردهی‌ها (initialization). یعنی اگه یک متغیر رو با var تعریف کنی، می‌تونی قبل از مقداردهی ازش استفاده کنی، ولی مقدارش undefined خواهد بود.

اما اگه از let یا const استفاده کنی، با یک خطا مواجه میشی چون این‌ها از هویسینگ متفاوتی برخوردارن و یک ناحیه زمانی مرده (temporal dead zone) دارن.


نمونه‌هایی از هویسینگ در عمل

اینجا چند مثال از کارهایی که در این آزمون باهاشون مواجه میشی رو آوردم:

  1. هویسینگ با var:

    console.log(myVar); // undefined
    var myVar = 10;
    console.log(myVar); // 10

    در این مثال، مفسر جاوااسکریپت خط var myVar; رو به بالای اسکوپ منتقل می‌کنه و فقط مقداردهی سر جاش باقی می‌مونه. به همین خاطر، اولین console.log مقدار undefined رو نشون میده.

  2. هویسینگ با توابع:

    sayHello(); // Hello, world!
    
    function sayHello() {
      console.log('Hello, world!');
    }

    در این حالت، چون sayHello یک تابع معمولی هست، کل تعریف اون به بالا منتقل می‌شه و می‌تونی قبل از اینکه تعریفش کنی، اون رو صدا بزنی. اما اگه تابع رو به صورت یک عبارت تابع (function expression) تعریف کنی، رفتار متفاوتی خواهی دید.


تفاوت‌های کلیدی در هویسینگ

جدول زیر بهت کمک می‌کنه تفاوت‌های اصلی هویسینگ رو بهتر درک کنی. این نکات از مواردی هستن که سوالات آزمون بر اساسشون طراحی شدن.

مورد var let و const توابع (Functions)
زمان هویسینگ فقط اعلان متغیر اعلان متغیر، اما در TDZ (ناحیه زمانی مرده) قرار می‌گیرد کل تعریف تابع
رفتار قبل از مقداردهی مقدار undefined خطا (ReferenceError) قابل استفاده
اسکوپ اسکوپ تابعی اسکوپ بلاکی اسکوپ تابعی یا سراسری

چی یاد می‌گیری؟

با شرکت در این آزمون، می‌تونی بفهمی چطور رفتار هویسینگ روی خروجی کدها تاثیر می‌ذاره. سوالات موجود در این آزمون در مورد تفاوت‌های هویسینگ در متغیرها و توابع هستن، مثلاً اینکه وقتی یک متغیر با var و let تعریف میشه، چه اتفاقی می‌افته یا اینکه صدا زدن یک تابع قبل از تعریفش چه نتیجه‌ای داره.

با شرکت در این آزمون، اطلاعات دقیقی درباره‌ی این مفاهیم به دست میاری و می‌تونی از اشتباهات رایج جلوگیری کنی.

با آمادگی کامل، روی "دکمه شروع" کلیک کن و وارد دنیای جذاب هویسینگ در جاوااسکریپت شو. موفق باشی!

تعداد سوال 20
قیمت رایگانــ
زمانسنج ندارد
رده‌سنی همه سنین
وضعیت فعال
نظرات ندارد
معمای امروز 28 مهر 1404 - ترکیب اعداد و حروف - مخصوص ای کیو بالای 100

معمای امروز 28 مهر 1404 - ترکیب اعداد و حروف - مخصوص ای...

طبق معمول هر روز صبح ساعت 8 ، باز هم یک پازل عددی و حروفی سخت داریم. پازل...

معمای پیدا کردن رمز - 27 مهر 404 - 200 تومن داخل این کیفه می تونی رمزش رو پیدا کنی ؟

معمای پیدا کردن رمز - 27 مهر 404 - 200 تومن داخل این...

خوب یک معمای واقعا سخت که حل کردنش کار آسونی نیست . در این معما یک رمز قوی...

تو چند حرکت می تونی رمز این قفل رو پیدا کنی ؟‌ بازی با اعداد - تست هوش

تو چند حرکت می تونی رمز این قفل رو پیدا کنی ؟‌ بازی...

یه بازی ساده براتون آوردم که در عین سادگی نیاز به هوش هم داره. کافیه طبق راهنما عدد...

پازل ترتیب اعداد - روی عدد درست از یک تا آخر به ترتیب کلیک کن

پازل ترتیب اعداد - روی عدد درست از یک تا آخر به ترتیب...

به نظر ساده میاد نه؟‌ ولی انقدرها هم که فکر می کنی ساده نیست . مخصوصا وقتی که...

تمدید پاسپورت بدون کارت پایان خدمت

تمدید پاسپورت بدون کارت پایان خدمت

بسیاری از جوانان و مشمولان نظام وظیفه با موضوع تمدید پاسپورت بدون کارت پایان خدمت درگیرند؛ به‌خصوص کسانی...

عمل بینی در تهران: هزینه، بهترین جراح و نکات مهم انتخاب پزشک

عمل بینی در تهران: هزینه، بهترین جراح و نکات مهم انتخاب پزشک

برای اینکه بتوانید بهترین جراح عمل بینی در تهران را پیدا کنید، ابتدا باید هدف خود از عمل...

تبلیغات پیامکی منطقه‌ای: راهنمای کسب‌ و کارهای محلی کم‌ هزینه

تبلیغات پیامکی منطقه‌ای: راهنمای کسب‌ و کارهای محلی کم‌ هزینه

تبلیغات پیامکی منطقه ای «SMS by Region» یک روش های رایج تبلیغات منطقه ای هدفمند است که برای...

پخش عمده پارچه فاستونی؛ مناسب تولیدی‌ها و فروشگاه‌های پوشاک

پخش عمده پارچه فاستونی؛ مناسب تولیدی‌ها و فروشگاه‌های پوشاک

پیدا کردن یک منبع مطمئن برای پخش عمده پارچه فاستونی همیشه...

"طرز تهیه کیک مرغ " مجلسی و حرفه ای با "عکس تزیین کیک مرغ" خوشمزه

"طرز تهیه کیک مرغ " مجلسی و حرفه ای با "عکس تزیین کیک...

"طرز تهیه کیک مرغ " مجلسی و حرفه ای با "عکس تزیین کیک مرغ" خوشمزه آموزش دستورپخت و...

تست آنلاین عینک روی صورت شما در صاپتیک استور

تست آنلاین عینک روی صورت شما در صاپتیک استور

آیا تا بحال اتفاق آفتاده که یک عینک آفتابی مردانه بسیار شیک در اینترنت ببینید ولی بخاطر اینکه...

قوانینی که پیش از سفر به تایلند باید بدانید

قوانینی که پیش از سفر به تایلند باید بدانید

تایلند به عنوان یکی از آزادترین مقاصد توریستی جهان شناخته می‌شود، اما این بدان معنا نیست که هیچ...

تعبیر خواب اینکه گوسفندی به دنبال من افتاده و می خواهد به من حمله کند

تعبیر خواب اینکه گوسفندی به دنبال من افتاده و می خواهد به من...

تعبیر خواب گوسفند که دنبال من می دود در تفاسیر اسلامی، دویدن گوسفند به دنبال فرد ممکن است...