البرمجة

تحويل ثواني JavaScript إلى دقائق وساعات: برمجة فعّالة

في هذا السياق، يُعد تحويل الثواني إلى دقائق وساعات في لغة البرمجة جافا سكريبت مهمة قد تكون معقدة بعض الشيء، ولكن يمكن تبسيط الكود باستخدام بعض الرياضيات والمنطق. دعنا نقوم بإعادة صياغة الكود بطريقة أكثر فعالية وقابلية للصيانة:

javascript
function formatTime(seconds) { if (seconds < 0) { return "Invalid input"; // يمكنك تعديل هذه الجزء حسب احتياجاتك } var hours = Math.floor(seconds / 3600); var minutes = Math.floor((seconds % 3600) / 60); var remainingSeconds = seconds % 60; var hoursText = hours > 1 ? "hours" : "hour"; var minutesText = minutes > 1 ? "minutes" : "minute"; var secondsText = remainingSeconds > 1 ? "seconds" : "second"; var result = ""; if (hours > 0) { result += hours + " " + hoursText + ", "; } if (minutes > 0) { result += minutes + " " + minutesText + ", "; } result += remainingSeconds + " " + secondsText + "."; return "You have played " + result; } // استخدام الدالة var seconds1 = 1439; var seconds2 = 9432; console.log(formatTime(seconds1)); // Output: You have played 23 minutes and 59 seconds. console.log(formatTime(seconds2)); // Output: You have played 2 hours, 37 minutes, and 12 seconds.

يقوم الكود بتعريف دالة formatTime التي تأخذ عدد ثواني وتقوم بتنسيق النص بحيث يتم عرض الوقت بالساعات، الدقائق، والثواني بشكل صحيح. يتم استخدام الرياضيات لحساب الوقت بشكل صحيح، ويتم استخدام المتغيرات لتحديد الجمل الصحيحة لعدد الساعات، الدقائق، والثواني.

المزيد من المعلومات

إضافة إلى الكود السابق، يمكن أن يكون من الفائدة أن نتناول بعض المفاهيم البرمجية والتوجيهات لتحسين أداء وقابلية صيانة الكود.

  1. استخدام الثوابت:
    يمكن استخدام ثوابت لتعريف القيم الثابتة التي قد تحتاج إليها في عدة أماكن في البرنامج. مثلاً، يمكن تعريف النصوص “hours” و “hour” كثوابت.

    javascript
    const HOURS_TEXT = "hours"; const HOUR_TEXT = "hour";
  2. التعامل مع النصوص بشكل دينامي:
    بدلاً من تحديد النصوص بشكل صلب في الكود، يمكن استخدام متغيرات لتخزين النصوص واستخدامها في الرسائل.

    javascript
    var hoursText = hours > 1 ? HOURS_TEXT : HOUR_TEXT;
  3. التعامل مع الزمن بشكل دينامي:
    يمكن استخدام دوال تحويل الوقت المنسقة (toLocaleString) للتعامل بشكل أكثر دينامية مع الزمن.

    javascript
    var timeString = new Date(0, 0, 0, hours, minutes, remainingSeconds).toLocaleTimeString();

    هذا يمكن أن يُحسِن عرض الزمن بحيث يكون أكثر توافقاً مع تفضيلات المستخدم.

  4. تحسين الأمان:
    يمكن إضافة مزيد من التحقق من صحة البيانات المدخلة، مثلاً التحقق من أن الثواني ليست سالبة.

    javascript
    if (seconds < 0) { return "Invalid input"; }

    هذا يساعد في تفادي الأخطاء الشائعة أو التصرف غير المتوقع.

  5. استخدام دوال لتقسيم المهام:
    قد يكون من الفعّال استخدام دوال فرعية لتقسيم المهام إلى أجزاء صغيرة وسهلة الفهم، مما يسهل قراءة الكود وصيانته.

    javascript
    function formatTime(seconds) { // ... return "You have played " + result; } function getTimeText(value, unit, isPlural) { // ... }

هذه الإضافات يمكن أن تساعد في جعل الكود أكثر نظافة وقابلية للصيانة وفهم.

زر الذهاب إلى الأعلى