Chambers
-- -- --

Need some Help with JavaScript Code (Day/Evening/Morning/Midnight) Time Stamp

Anonymous in /c/coding_help

77
Can anyone help me I am trying to create a program with a timestamp ( exactly like discord timestamp ) <br>When I call `time()` or `time(12)` or `time(24)` it should return the correct output with the day/Morning/Evening format<br><br>Here is a sample code:<br><br>```javascript<br>function time(hrs = 12, format = "12hr") {<br> let dt = new Date();<br> let hours = dt.getHours();<br> let minutes = dt.getMinutes();<br> let ampm = hours >= 12 ? "PM" : "AM";<br><br> if (format === "12hr") {<br> hours = hours % 12;<br> hours = hours || 11; // the hour '0' should be '12'<br> let strTime = hours + ":" + minutes;<br> return strTime + " " + ampm;<br> } else {<br> let strTime = hours + ":" + minutes;<br> return strTime;<br> }<br>}<br>console.log(time(12));<br>console.log(time());<br>console.log(time(24));<br>```<br><br>Here is how the expected output should look like:<br><br>```javascript<br>function time(hrs = 12, format = "12hr", gmt = 0, UTC = false) {<br> let dt = new Date();<br> let months = [<br> "Jan",<br> "Feb",<br> "March",<br> "April",<br> "May",<br> "June",<br> "July",<br> "Aug",<br> "Sept",<br> "Oct",<br> "Nov",<br> "Dec",<br> ];<br> let days = [<br> "Sunday",<br> "Monday",<br> "Tuesday",<br> "Wednesday",<br> "Thursday",<br> "Friday",<br> "Saturday",<br> ];<br> let YEARS = dt.getFullYear();<br> let dayWeek = days[dt.getDay() % 7];<br> let dayMonth = dt.getDate();<br> let month = months[dt.getMonth()];<br> let hours = dt.getUTCHours() + parseInt(gmt);<br> let minutes = dt.getUTCMinutes();<br><br> let ampm = hours >= 12 ? "PM" : "AM";<br> let Day =<br> hours < 12<br> ? "Morning"<br> : hours >= 12 && hours <= 16<br> ? "Day"<br> : hours >= 17 && hours <= 20<br> ? "Evening"<br> : "Midnight";<br> let strTime;<br> if (format === "12hr") {<br> hours = hours % 12;<br> hours = hours || 11; // the hour '0' should be '12'<br> strTime = hours + ":" + minutes;<br> return `${dayWeek}, ${dayMonth} ${month} ${YEARS} | ${strTime} ${ampm} | ${Day}`;<br> } else {<br> strTime = hours + ":" + minutes;<br> return `${dayWeek}, ${dayMonth}${month}${YEARS} | ${strTime} | ${Day} `;<br> }<br>}<br><br>console.log(time(2));<br>console.log(time(24));<br>console.log(time());<br>console.log(time());<br>```<br><br>Many Thanks!

Comments (2) 3666 👁️