جاوا اسکریپت یکی از محبوب‌ترین زبان‌های شناخته شده در جهان است زبانی مناسب برای طراحی وب، برنامه‌های ترکیبی گوشی‌های هوشمند و حتی سمت سرور که بهبودهای زیادی را در چند سال اخیر تجربه کرده است. علاوه بر این، به دلیل گستردگی جاوا اسکریپت، معمولا نقطه شروعی برای یادگیری برنامه‌نویسی تحت وب یا کنترل ربات نیز محسوب می‌شود. برنامه‌نویسی که بتواند در زبان جاوا اسکریپت به خوبی کدنویسی کرده و برنامه‌هایی سازمان‌یافته و منظمی را تولید کند، مطمینا جایگاه ویژه‌ای را در صنعت برنامه‌نویسی خواهد داشت. در این مقاله، به معرفی تعدادی از تکنیک‌های خاص و نکات کلیدی در زبان جاوا اسکریپت می‌پردازیم. مهم نیست از کدام کتابخانه جاوا اسکریپت و برای چه هدفی استفاده می‌کنید، این تکنیک‌ها می‌توانند بهبود زیادی را در برنامه‌نویسی شما به ارمغان آورند. با همراه باشید. پیش‌نیاز این آموزش تسلط به مفاهیم و عبارات زبان جاوا اسکریپت است. اما اگر به تازگی این زبان را شروع کرده‌اید، باز هم می‌تواند مرجع تمرین خوبی برای شما باشد. اگر تمام این تمرین زیر را یاد بگیرید، مطمینا می‌توانید از پس انجام پروژه‌های بزرگ‌تری هم برآیید تخصیص یک متغیر ناشناس باعث تولید ( خواهد شد. تا جایی که امکان است از تعریف این دسته از متغیرها در کدنویسی پرهیز کنید. همچنین سعی کنید به هیچ‌عنوان از عبارت برای تعریف متغیرهای خود استفاده نکنید. به چه دلیل؟ عملگر یا تنها یک نوع تبدیل خودکار را در عبارت انجام خواهد داد و سپس به سراغ مقایسه دو عبارت می‌رود. اما عملگر = (یا! = هیچ تبدیلی را شامل نمی‌شود و از ابتدا، تنها مقدار و نوع دو عبارت را با یکدیگر مقایسه می‌کند، اگر نوع عبارات با یکدیگر برابر نباشد، عملگرد بدون اتلاف وقت را به خروجی می‌برد. به همین دلیل نیز عملکرد سریع‌تری نسبت به دارد. پس لازم نیست زیاد خود را درگیر این مقادیر کنید و در صورت نیاز از بهترین مقدار در برنامه‌نویسی خود استفاده کنید. استفاده از سیمی‌کالن می‌تواند تکنیک بسیار خوبی در کدنویسی باشد. البته قرار دادن آن در پایان عبارات جاوا اسکریپت الزامی نیست و در بیش‌تر موارد توسط کمپایلر جاوا اسکریپ افزوده خواهد شد، اما در بعضی مواقع نیز مکان سیمی‌کالن به طور اشتباه شناسایی شده و باعث بروز خطا و یا باگ نرم‌افزاری می‌شود. پس بخاطر نظم هم که شده از سیمی‌کالن استفاده کنیم. عمل همانطور که نام آن پیداست، باعث تولید یک آبجکت می‌شود. این روش با نظمی که ارایه می‌دهد می‌تواند کدنویسی را تا حد زیادی بهبود بخشد. عبارت عملگری برای برگرداندن نوع متغیر در قالب یک رشته است. توجه داشته باشید که استفاده از typeof در به صورت یک ( به خروجی خواهد رفت. علاوه بر این، انواع مختلف اشیاء در جاوا اسکریپ، نظیر آرایه، دیتا و . نیز به حالت شیء برگردانده می‌شوند. عبارت یکی از خصوصیات است که می‌توان دستور آن را به وسیله کدنویسی لغو کرد. عبارت نیز یکی دیگر از عملگردهای جاوا اسکریپت است که آبجکت مورد نظر را با انواع استاندارد آبجکت مقایسه می‌کند و اگر نوع مورد نظر را یافت، خروجی را به صورت نشان خواهد داد. این نوع تابع در جاوا اسکریپ با نام شناخته می‌شود. تابع خودفراخوان بعد از تولید، بدون نیاز به فراخوانی شروع به اجرا خواهد شد. شکل کلی این دسته از توابع به صورت زیر است: این تکنیک می‌تواند زمانی مفید باشد که قصد تولید داده‌های جعلی برای ارزیابی یک برنامه یا ساختار را دارید. تابع یکی از مواردی است که در بروزرسانی‌های اخیر موتور جاوا اسکریپ اضافه شده است و می‌توان از آن برای حذف فاصله یا فضای سفید در یک آبجکت استفاده نمود. اما در نسخه‌های قبلی جاوا اسکریپ چنین تابعی وجود ندارد، پس برای استفاده باید آن را به صورت دستی در آبجکت بسازید: آبجکت از جهاتی به آرایه شبیه است، به عنوان مثال از ویژگی برخوردار می‌باشد و شمارش خواص آن نیز به مانند آرایه‌ها از صفر شروع می‌شود اما از اعمالی مثل یا پشتیبانی نمی‌کند. به همین دلیل در بعضی شرایط نیاز داریم تا را به آرایه تبدیل کنیم. در بعضی از مسایل نیاز است تا مقدار ورودی یک متغیر تنها به صورت عدد باشد. البته راه‌های بسیاری برای نوشتن این تابع وجود دارد اما تابع زیر بهترین عملکرد را در سریع‌ترین زمان ممکن ارایه خواهد داد: این روش نیز درست مانند مثال قبل عمل خواهد کرد با این تفاوت که اگر ورودی شامل متغیری از نوع آرایه است، مقدار را برمی‌گرداند. برای پاک‌کردن یک آیتم در آرایه از به جای عمل استفاده کنید. استفاده از باعث جایگزینی در آیتم پاک شده خواهد شد، از این رو می‌تواند باعث بوجود آمدن باگ نرم‌افزاری در برنامه شود. پس به جای کد زیر . از این روش استفاده کنید: به خاطر داشته باشید که عمل تنها در حذف ویژگی‌های یک آبجکت کاربرد دارد. این تکنیک نیز درست مانند مثال عمل می‌کند. علاوه بر این، اگر را مقداری بیش‌تر از طول آرایه قرار دهید، آیتم‌های جدیدی با مقادیر ساخته خواهد شد. (عکس ) عبارات زیر عملکردی درست مانند عبارت خواهند داشت: همچنین می‌تواند از عبارت برای تنظیم مقدار پیش‌فرض در یک متغیر استفاده کرد: توجه داشته باشید که تابع مقدار را به خروجی می‌برد، نه یک عدد. در زبان جاوا اسکریپ مقدار برابر با است. این تناقض از نسخه بیت باینری در استاندارد IEEE نش ت می‌گیرد که باعث شده تا تمام اعداد جاوا اسکریپ به صورت ذخیره شوند. برای حل این مشکل می‌توانید از توابع و یا استفاده کنید. قطعه کد زیر از تکرار حلقه درون خواص آبجکت جلوگیری می‌کند: در این قطعه کد، با استفاده از انتخاب‌گر ، عناصر را ذخیره می‌کنیم: توجه داشته باشید که مقادیر ارسال شده به تابع منفی نباشند. در غیر این صورت باعث بروز باگ نرم‌افزاری می‌شود. به عبارات مقایسه شده زیر توجه کنید: استفاده از این دو عبارت در کدنویسی بسیار هزینه‌بر است زیرا موتور اسکریپ باید در هر بار، کد منبع را به کد اجرایی تبدیل کند. متغیرها با استفاده از تابع در ( درج خواهند شد. از این رو، اگر متغیر دیگری نیز از نام مشابهی برخوردار باشد، ممکن است باعث بروز تناقض و ایجاد باگ نرم‌افزاری شود. به جای کد زیر . از این عبارت استفاده کنید: علاوه بر این، از آنجایی که تعاریف و اولین جمله در حلقه هستند، پس تنها یک بار فراخوانی خواهند شد. به همین دلیل نیز قطعه کد بالا بسیار سریع‌تر از کد زیر عمل خواهد کرد: همانطور که مشاهده می‌کنید، عبارت در هربار تکرار حلقه، از نو محاسبه می‌شود. توجه: البته این مشکل در نسخه جدید موتور جاوا اسکریپ برطرف شده است. در صورت ارسال رشته به این دو تابع، رشته به مانند (در مثال ) ارزیابی خواهد شد. از این رو عملکردی کندتر را ارایه خواهد داد. پس به جای قطعه کد زیر . از این روش استفاده کنید: زمانی که تعداد شروط if در برنامه میان باشد، بهتر است از استفاده کنید تا برنامه علاوه بر سرعت بالاتر، از نظم بیش‌تری برخوردار باشد. با استفاده از روش زیر، می‌توان از عبارت در محدوده عددی استفاده نمود. این کار باعث ایجاد تداخل در عملکرد حلقه خواهد شد. پس به جای قطعه کد زیر . از این روش استفاده کنید: می‌توانید در صورت طولانی شدن زمان درخواست از سرور (به عنوان مثال به دلیل مشکلات اینترنت) ، از تابع برای لغو درخواست استفاده کنید. البته به خاطر داشته باشید که در حالت کلی باید از ارسال درخواست‌های ( پرهیز کنید. به طور کلی، سرور در زمانی که ارتباط ایجاد شده باشد و فعالیتی در مدت ثانیه انجام نشود، خطای ارسال خواهد کرد. همچنین فایروال نیز ممکن است بعد از مشاهده عدم فعالیت شبکه، این خطا را ارسال کند. برای رفع این مشکل، می‌توانید در مدت زمان معینی، پیام‌های خالی به سرور ارسال کنید. از این رو، دو تابع زی را به برنامه خود بیافزایید. تابع اول ارتباط را زنده نگاه خواهد داشت و دیگری آن را لغو می‌کند. با استفاده از این رو ش می‌توانید خطای را کنترل کنید: (مقدار را نسبت به نیاز خود تغییر دهید. تابع باید در قسمت پایانی عبارت افزوده شود. همچنین نیز در آخر عبارت کاربرد خواهد داشت. به عنوان مثال، به جای این قطعه کد . از این روش استفاده کنید: قبل از اجرای پروژه حتما از ابزارهایی مثل برای مرتب‌سازی کد و همچنین برای خلاصه‌سازی استفاده کنید. خب، این بخش از آموزش جاوا اسکریپ هم به پایان رسید. البته تکنیک‌ها و روش‌های زیادی در کدنویسی وجود دارد، پس طبیعتا تنها بخش کوچکی از آن‌ها را توانستیم در این مقاله گردآوری کنیم. اگر فکرمی‌کنید این آموزش برایتان مفید بوده، یا سوال و پیشنهادی در این مورد دارید، دیدگاه خودتان را در پایین همین مقاله برایمان ارسال کنید. از شنیدن نظرات شما خوش‌حال می‌شویم.