سلام رفقا ، حالتون چطوره ؟
امروز میخوایم درباره یک مفهوم مهم توی جاواسکریپت با هم صحبت کنیم
همونطوری که احتمالا توی title این مقاله دیدید میخوایم درباره TDZ با هم صحبت کنیم
پس ممنون میشم تا آخر این مقاله با من باشید و اگه دوستش داشتین و براتون مفید بود اول لایکش کنید و بعد برای دوستانتون ارسالش کنید ? . . .
این مفهوم پیش نیاز فهمیدن مفهوم هویستینگ هست که مخفف Temporal Dead Zone هست
پس با من باشید تا باهم بررسیش کنیم
بیاید فرض کنیم که ۱۰ خط کد داریم و در خط ۱۱ کد زیر رو داریم:
... const sampleVariable = "Sample Value"
از خط اول تا خط دهم ( خط قبل از تعریف متغییر ) برای ما TDZ به حساب میاد ...
به طور کلی اگه که بخوایم بگیم TDZ چی هست ، باید بگیم که از اولین خط شروع بلاک کد تا قبل از خط تعریف کردن متغییر برای ما TDZ به حساب میاد ، حالا این بلاک کد میتونه کل بلاک کد گلوبال فایل جاواسکریپت ما باشه ( یعنی از خط اول فایل جاواسکریپت ما تا اخرین خط کدمون ) ، یا مثلا میتونه بلاک بدنه ساختار شرطی ()if ما باشه و یا داخل بدنه function باشه و سایر بلاک های کد ، درواقع و درنهایت به طور خلاصه داریم :
? از خط اول بلاک کد ما تا خط قبل از تعریف متغییر برای اون متغییر TDZ به حساب میاد !
نکته مهم در این مفهوم این هست که این TDZ اصلا وابسته به نوع تعریف متغییر یا نوع تعریف فانکشن (تابع) نیست یعنی به صورت کلی برای انواع تعریف متغییر و تعریف تابع این مفهوم تعمیم داده میشه ?
خب ...
خیلی خیلی ممنونم که تا اینجا با من همراه بودین ، امیدوارم که براتون مفید واقع شده باشه
خوشحال میشم لایک و نظراتتون رو ببینم و با هم اینترکشن داشته باشیم ??