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

پشتیبانی 24 ساعته : 02188867940 – 09927674217

برای مشاهده لیست علاقه مندی ها وارد شوید!

مشاهده محصولات فروشگاه
0

هیچ محصولی در سبد خرید نیست.

Debugger JS

دسته بندی :اخبار سایت 18 مارس 2023 علیرضا بابامرادی 95
Debugger js

Debugger JS

نمونه های دیگر که در آن تنظیم مجدد کامپایلر می تواند عوارض جانبی قابل مشاهده ایجاد کند (و بنابراین باید از آن استفاده شود) شامل مواردی مانند هر تماس عملکرد با عوارض جانبی (حتی و به ویژه توابع دریافت کننده) یا اشیاء پروکسی ES6 است (به عنوان ES6 و فراتر از این کتابخانه ها مراجعه کنید ).

در نظر بگیرید:

function foo() {
console.log( b );
return 1;
} v
ar a, b, c;
// ES5.1 getter literal syntax
c = {
get bar() {
console.log( a );
return 1;
}
};

a = 10;
b = 30;
a += foo(); // 30

b += c.bar; // 11
console.log( a + b ); // 42

اگر برای اظهارات کنسول (..) در این قطعه (فقط به عنوان یک شکل مناسب از عوارض جانبی قابل مشاهده برای تصویر استفاده می شد) ، احتمالاً موتور JS در صورت تمایل رایگان بود (چه کسی می داند (چه کسی می داند اگر این کار!؟) ، برای مرتب کردن کد به:

// …
a = 10 + foo();
b = 30 + c.bar;
// …

در حالی که معناشناسی JS خوشبختانه ما را از کابوسهای قابل مشاهده که به نظر می رسد تنظیم مجدد کامپایلر در معرض خطر است ، محافظت می کند ، اما هنوز هم درک این نکته مهم است که چگونه یک پیوندی که بین نحوه تألیف کد منبع (به روشی از بالا به پایین) وجود دارد ، وجود دارد. روش آن پس از تدوین اجرا می شود.

تنظیم مجدد بیانیه کامپایلر تقریباً یک متفور خرد برای همزمانی و تعامل است. به عنوان یک مفهوم کلی ، چنین آگاهی می تواند به شما در درک بهتر مسائل جریان کد async JS کمک کند

 

باز بینی

یک برنامه JavaScript (عملاً) همیشه به دو یا چند قطعه شکسته شده است ، جایی که اولین قطعه اکنون اجرا می شود و قسمت بعدی بعداً در پاسخ به یک رویداد اجرا می شود. حتی اگر این برنامه به صورت chunk-chunk اجرا شود ، همه آنها دسترسی یکسان به دامنه برنامه و حالت را دارند ، بنابراین هر اصلاح به ایالت در بالای کشور قبلی انجام می شود.

 

هر زمان که رویدادهایی برای اجرا وجود دارد ، حلقه رویداد تا زمانی که صف خالی باشد اجرا می شود. هر تکرار از حلقه رویداد “تیک” است. تعامل کاربر ، IO و Timers Enqueue Events در صف رویداد.

در هر لحظه ، فقط یک رویداد می تواند از صف در یک زمان پردازش شود. در حالی که یک رویداد در حال اجرا است ، می تواند مستقیم یا غیرمستقیم باعث ایجاد یک یا چند رویداد بعدی شود.

 

همزمانی زمانی است که دو یا چند زنجیره از رویدادها با گذشت زمان به هم می پیوندند ، به گونه ای که از دیدگاه سطح بالا ، به نظر می رسد که همزمان در حال اجرا هستند (حتی اگر در هر لحظه تنها یک رویداد پردازش شود).

به عنوان مثال برای اطمینان از سفارش یا جلوگیری از “شرایط مسابقه” ، اغلب انجام نوعی هماهنگی تعامل بین این “فرآیندهای” همزمان (به عنوان متمایز از فرآیندهای سیستم عامل) ضروری است. این “فرایندها” همچنین می توانند با شکستن خود در تکه های کوچکتر همکاری کنند و اجازه دهند “فرآیند” دیگر در هم تنیده شوند

 

علیرضا بابامرادی

راه آسان‌تری برای ارتباط با کاربران‌مان پیدا کرده‌ایم :) عضویت در کانال

مطالب زیر را حتما بخوانید:

قوانین ارسال دیدگاه در سایت

  • چنانچه دیدگاهی توهین آمیز باشد تایید نخواهد شد.
  • چنانچه دیدگاه شما جنبه ی تبلیغاتی داشته باشد تایید نخواهد شد.
  • چنانچه از لینک سایر وبسایت ها و یا وبسایت خود در دیدگاه استفاده کرده باشید تایید نخواهد شد.
  • چنانچه در دیدگاه خود از شماره تماس، ایمیل و آیدی تلگرام استفاده کرده باشید تایید نخواهد شد.
  • چنانچه دیدگاهی بی ارتباط با موضوع آموزش مطرح شود تایید نخواهد شد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

لینک کوتاه:
0