¿Cómo redondear el tiempo al cuarto de hora más cercano usando JavaScript?

Le hemos dado una hora y la tarea es redondear la hora al cuarto de hora más cercano con la ayuda de JavaScript. Hay dos enfoques que se analizan a continuación:

Enfoque 1: utilice los métodos getMinutes() y getHours() para obtener los minutos y las horas en una variable ( p. ej . , minutos, horas), agregue 7,5 a minutos, divídalo por 15, tome el valor entero y multiplíquelo por 15, lo que dará el cuarto de minutos más cercano. Si este valor va más allá de 60, entonces tome el mod con 60. Para hrs, si mins 52 y si hrs == 23, establezca hrs en 0; de lo contrario, incremente su valor en 1.

  • Ejemplo:

    <!DOCTYPE HTML>
    <html>
      
    <head>
        <title>
            Round time to the nearest quarter 
            hour in JavaScript
        </title>
        <style>
            body {
                text-align: center;
            }
              
            h1 {
                color: green;
            }
        </style>
    </head>
      
    <body>
        <h1
           GeeksforGeeks 
        </h1>
        <p>
          Click on button to round the time 
          to nearest quarter hour
        </p>
        <p id="gfg"></p>
        <button onClick="GFG_Fun()">
          click here
        </button>
        <p id="geeks"></p>
        <script>
            var up = document.getElementById('gfg');
            var down = document.getElementById('geeks');
            var date = new Date();
            up.innerHTML = "" + date + "";
      
            function GFG_Fun() {
      
                // Getting minutes
                var mins = date.getMinutes();
      
                // Getting hours
                var hrs = date.getHours();
                var m = (parseInt((mins + 7.5) / 15) * 15) % 60;
      
                // Converting '09:0' to '09:00'
                m = m < 10 ? '0' + m : m;
                var h = mins > 52 ? (hrs === 23 ? 0 : ++hrs) : hrs;
      
                // Converting '9:00' to '09:00'
                h = h < 10 ? '0' + h : h;
                down.innerHTML = h + ":" + m;
            }
        </script>
    </body>
      
    </html>
  • Producción:

Enfoque 2: use los métodos getMinutes() y getHours() para obtener los minutos y las horas en una variable (por ejemplo, minutos, horas). Divida los minutos por 15, tome el valor redondo por Math.round() y multiplíquelo por 15, lo que dará el cuarto de minuto más cercano. Si este valor va más allá de 60, entonces tome el mod con 60. Para hrs, si mins 52 y si hrs == 23, establezca hrs en 0; de lo contrario, incremente su valor en 1.

  • Ejemplo:

    <!DOCTYPE HTML>
    <html>
      
    <head>
        <title>
            Round time to the nearest quarter 
            hour in JavaScript
        </title>
        <style>
            body {
                text-align: center;
            }
              
            h1 {
                color: green;
            }
        </style>
    </head>
      
    <body>
        <h1
           GeeksforGeeks 
        </h1>
        <p>
          Click on button to round the time 
          to nearest quarter hour
        </p>
        <p id="gfg"></p>
        <button onClick="GFG_Fun()">
          click here
        </button>
        <p id="geeks"></p>
        <script>
            var up = document.getElementById('gfg');
            var down = document.getElementById('geeks');
            var date = new Date();
            up.innerHTML = "" + date + "";
      
            function GFG_Fun() {
      
                // Getting minutes
                var mins = date.getMinutes();
      
                // Getting hours
                var hrs = date.getHours();
                var m = (Math.round(mins/15) * 15) % 60;
      
                // Converting '09:0' to '09:00'
                m = m < 10 ? '0' + m : m;
                var h = mins > 52 ? (hrs === 23 ? 0 : ++hrs) : hrs;
      
                // Converting '9:00' to '09:00'
                h = h < 10 ? '0' + h : h;
                down.innerHTML = h + ":" + m;
            }
        </script>
    </body>
      
    </html>
  • Producción:

Publicación traducida automáticamente

Artículo escrito por PranchalKatiyar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *