نحوه دیباگ کردن کدهای JavaScript در پروژه
چطوری می تونم کدهای جاوا اسکریپت رو مثل کدهای سی شارپ خط به خط دیباگ کنم ؟ به عنوان مثال کدهای زیر رو دارم. چطوری میتونم این کدها رو دیباگ کنم و اگر احیانا خطایی دارم پیداش کنم ؟
function myFunc()
{
let var1 = document.getElementById('div1');
let var2 = var1.innerHtml;
var2 = parsInt(var2);
var2++;
var1.innerHtml = va2;
}
پاسخ هوش مصنوعی
برای دیباگ کردن کدهای JavaScript و پیدا کردن خطاها، می توانید از ابزارهای توسعه دهنده (Developer Tools) مرورگرها استفاده کنید. در زیر مراحل دیباگ کردن کد جاوا اسکریپت آورده شده است:
- مرورگر خود را باز کنید و به صفحه ای که کد جاوا اسکریپت در آن وجود دارد بروید.
- با فشردن F12 یا راست کلیک بر روی صفحه و انتخاب Inspect، به ابزارهای توسعه دهنده دسترسی پیدا کنید.
- به تب Sources بروید. در اینجا می توانید به فایل های جاوا اسکریپت دسترسی پیدا کنید.
- فایل جاوا اسکریپت خود را پیدا کنید و بر روی شماره خط (جنبه نشانه گذاری) برای همان خطی که می خواهید دیباگ کنید کلیک کنید. این کار یک نقطه توقف (breakpoint) ایجاد می کند.
- اکنون می توانید تابع خود را با استفاده از کنسول یا با تعامل با رابط کاربری اجرا کنید. وقتی اجرای کد به نقطه توقف می رسد، کد متوقف می شود.
- شما می توانید می توانید متغیرها را مشاهده کنید و با استفاده از دکمه های Step over و Step into کد را خط به خط اجرا کنید.
با توجه به کدی که ارایه کرده اید، همچنین چند خطا در آن وجود دارد که می توانید اصلاح کنید:
function myFunc()
{
let var1 = document.getElementById('div1');
let var2 = var1.innerHTML; // اصلاح innerHtml به innerHTML
var2 = parseInt(var2); // اصلاح parsInt به parseInt
var2++;
var1.innerHTML = var2; // اصلاح va2 به var2
}
با انجام این تغییرات و پیروی از مراحل دیباگ، می توانید به راحتی خطاهای کد خود را پیدا کنید و آنها را اصلاح کنید.
خطایابی در کدهای javascript
برای دیباگ کردن و پیدا کردن خطاها در جاوااسکریپت چندین راه وجود داره.
-
استفاده از دستور console.log
یکی از پرکاربردترین روش ها استفاده از دستور console.log می باشد. شما می تونید مقدار هر متغیر، لیست، آرایه یا تابعی را با استفاده از دستور console.log نمایش بدید. برای نمایش خروجی این دستور کافیه در مرورگر دکمه f12 رو بزنید و در سربرگ console خروجی رو مشاهده کنید. در ادامه یک مثال از این دستور رو مشاهده می کنید.
<script>
function Sum()
{
a = 5;
b = 6;
c = a + b;
console.log(c);
}
</script>
در تصویر زیر نمونه خروجی این دستور را مشاهده می کنید:
-
استفاده از کلمه کلیدی debugger
اگر در کدهای جاوااسکریپت خودتون کلمه debugger رو قرار بدید به محض اینکه به این دستور برسیم اجرا بقیه کدها متوقف میشه و دقیقا مثل کدهای سی شارپ می تونید خط به خط با استفاده از دکمه f10 کدها رو اجرا کنید و مقادیر رو مشاهده کنید. این دستور مشابه با breakpoint عمل می کنه. در ادامه یک نمونه استفاده از این دستور رو مشاهده می کنید:
<script>
funtion myFunc()
{
let x = 15 * 5;
debugger;
document.getElementById("demo").innerHTML = x;
}
</script>
دقت کنید برای نمایش خروجی این دستور و Trace کردن کدها باید دکمه f12 رو بزنید تا Inspect مرورگر باز بشه و به سربرگ Source برید. تصویر زیر رو مشاهده کنید.
خود مرورگرها هم امکاناتی برای دیباگ کردن کدهای جاوااسکریپت دارن ولی بهترین راه حل ها همین دو موردی بود که عرض کردم خدمتتون.
- آموزش استفاده از پلاگین گردونه شانس در Asp.net core به همراه سورس
- نمایش متن به صورت فرمت شده در CkEditor
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- حذف فایلها و دستورات Css و JavaScript اضافی
- جمع کردن (Collapse) منوی جانبی موقع لود فرم در پنل AdminLte
- دلیل خطای Identifier 'X' has already been declared در جی کویری چیست ؟
- جدا کردن سه رقم سه رقم اعداد در input با جاوااسکریپت
- محدود کردن تایپ عدد یا حروف با جاوا اسکریپت
- مقایسه بین فریم ورک های Angular و React.js و Vue js
- نمایش پیغام گرافیکی با جی کویری
- تفاوت Class Component و Functional Component در React.js چیست ؟
- پراپس (Props) در React.js چیست ؟
- دریافت کمترین و بیشترین مقدار با پلاگین ui-jquery