نريد أن نتيح هذا المشروع المفتوح المصدر إلى كل الناس حول العالم. من فضلك ساعدنا على ترجمة محتوى هذه السلسله للغة التى تعرفها.
الرجوع الي الدرس

اسلوب سيئ

الأهمية: 4

ما هو الخطأ في اسلوب الكود أدناه؟

function pow(x,n) { let result=1; for(let i=0;i<n;i++) {result*=x;} return result; } let x=prompt("x?",''), n=prompt("n?",'') if (n<=0) { alert(`Power ${n} is not supported, please enter an integer number greater than zero`); } else { alert(pow(x,n)) }

اصلحه.

لاحظ التالي:

function pow(x,n) // <- لا مسافات بين المعطيات { // <- القوس المعقوف في سطر جديد وحده let result=1; // <- لا مسافة قبل او بعد = for(let i=0;i<n;i++) {result*=x;} // <- لا مسافة // المحتوي { ... } يجب ان يكون علي سطر جديد return result; } let x=prompt("x?",''), n=prompt("n?",'') // <-- ممكن تقنيا, // ولكن من الأفضل جعلها سطرين ، كما أنه لا توجد مسافات أو مفقودة ; if (n <= 0) // <- لا مسافات داخل (n <= 0), و يجب ان يكون هنالك سطر فوقه { // <- القوس المعقوف في سطر جديد وحده // أدناه - يمكن تقسيم الخطوط الطويلة إلى خطوط متعددة لتحسين القراءة alert(`Power ${n} is not supported, please enter an integer number greater than zero`); } else // <- يمكن أن يكتب على سطر واحد مثل "} else {" { alert(pow(x,n)) // لا مسافات و مفقودة ; }

التصحيح المفضل:

function pow(x, n) { let result = 1; for (let i = 0; i < n; i++) { result *= x; } return result; } let x = prompt("x?", ""); let n = prompt("n?", ""); if (n <= 0) { alert(`Power ${n} is not supported, please enter an integer number greater than zero`); } else { alert( pow(x, n) ); }