دلایل زیادی موجب کاهش امتیاز FID و همینطور TBT در سایت ما می شود. ولی تبهکار مهم کسی وجود ندارد جز جاوااسکریپت!
اجرای First party script
تکه کردن اشتباه کدها، اجرای هنگفت کدها و … قادر است به طور بی واسطه بر روی TBT، FID و TTI اثر بگذارد، بنابر این بارگزاری تدریجی کدها میتواند به بهبود تعاملات استفاده کننده با تارنما امداد قابل توجهی نماید. ممکن میباشد اینطور به لحاظ رسد کهاین سرورها می باشند که در درحال حاضر نقاشی کردن پیکسل های ورقه برای استفاده کننده میباشند ولی شما بایستی مدام مراقب باشید که تعاملات استفاده کننده بوسیله اسکریپت های
آموزش سئو در مشهد بلندمرتبه مسدود نشود.در حالتی که که شما کدهای والا را بر پایه ی مسیر تقسیم بندی نمایید. این شغل در چندین میلی ثانیه و در بعضا مفاد در توان یک ثانیه سرعت تارنما شمارا ارتقاء میدهد.
به کار گیری از Web worker
بسته شدن thread از کارداران اساسی تاخیردر تعاملات سایت با مخاطب میباشد. Web worker ها میتوانند با اجرای جاوااسکریپت ها در بگراند این مسئله را مرتفع نمایند. با جابجایی عملیات های غیروابسته از رابط کاربری به یک web worker مستقل میقدرت فرصت بسته شدن main thread را کاهش و FID را به صورت قابل توجهی بهبود داد.
به کارگیری از کتابخانه های پایین را برای سهولت در استعمال از Webworkerها در لحاظ داشته باشید:
Comlink
Workway
Workerize
کاهش فرصت اجرای کدهای جاوااسکریپت
کاهش دادن کدهای جاوااسکریپت و همینطور سئو کدها در یک شیت منطقا سرعت اجرای کدها را بالابرده و به بهبود تجارب کاربری شما امداد میکند.
برای کاهش و سئو کدهای JS دو رویکرد اصلی در پیش دارید:
Deferکردن کدهای غیرضروری
کل کدهای جاوااسکریپت به طور پیشفرض render blocking میباشند. زمانی که مرورگر با یک تگ جاوااسکریپت روبرو گردد، متوقف گردیده، پوشه را بارگیری کرده و بعداز تجزیه آن را انجام مینماید. برای اینکه ایم روند در معدود ترین مجال ممکن صورت بپذیرد مایحتاج میباشد که از قراردادن کدهای غیرضروری اجتناب نمائید.
ترفند:
برای پیداکردن کدهای غیرضروری کافی میباشد وارد اطراف devtools گردید و در نصیب coverage کدهای غیرضروری را که با رنگ قرمز رنگ معلوم گردیده اند را پیدا نمائید.
برای کوتاه کردن و یا این که غیرفعال کردن کدها جاوااسکریپت غیرضروری دو رویکرد پیش روی خویش دارید:
Code-splitting که معمولا تحت عنوان lazy-loading از آن خاطر میگردد.
Defer یا این که async کردن اسکریپت های غیرضروری
(قابل ذکر میباشد که همه third party scriptها بایستی با به طور پیشفرض با defer و async بارگزاری شوند.)
Minimize کردن polyfillsهای غیرضروری
در حالتیکه شما از سینتکس امروزی جاوا اسکریپت و همینطور API مرورگرهای نو برای کدینگ خویش به کار گیری نموده اید برای عمل بر روی مرورگرهای کهن نیاز به Transpile کردن دارید کهاین مشتمل بر polyfillها نیز هست. یکی مشکلاتی کهاین transpile کردن و به کارگیری از polyfillها برای ما به وجود می آورد این میباشد که مرورگرهای نو دیگر آن را دانلود نمی کنند (در حالتی که به آن نیاز نداشته باشند.) برای کاهش وسعت جاوااسکریپت خویش تا حد ممکن از polyfill اجتناب نمایید و استعمال از آن را به گوشه و کنار هایی که حقیقتا به آن نیاز دارید محصور فرمایید.
seo polyfillها
درصورتی که از Babel تحت عنوان transpiler به کار گیری میکنید از babel-preset-env برای مرورگرهای ضروری به کارگیری فرمایید. همینطور برای babel7.9 مورد bugfixes را فعال نمایید تا polyfillها غیر ضروری را حذف نماید.
از ماژول های ذیل به کارگیری فرمائید:
1
2