Untuk merubah menit menjadi formatjam:menit
ataux jam, x menit
Dapatkan nilai 1 jam dalam menit, yakni dengan membagi menit dengan 60
Dapatkan sisa pembagian dari pembagian di atas.
Tentukan format yang kita inginkan misal
jam:menit
ataux jam, x menit
const padTo2Digits = (num) => num.toString().padStart(2, '0')
function toHoursAndMinutes(totalMinutes) {
const minutes = totalMinutes % 60;
const hours = Math.floor(totalMinutes / 60);
return `${padTo2Digits(hours)}:${padTo2Digits(minutes)}`;
}
function humanHourMinute(totalMinutes){
const minutes = totalMinutes % 60;
const hours = Math.floor(totalMinutes / 60);
const dMinutes = minutes !==0 ? ` ${minutes} menit`:''
return `${hours} jam${dMinutes}`
}
console.log(toHoursAndMinutes(90)); // ποΈ 01:30
console.log(toHoursAndMinutes(60)); // ποΈ 01:00
console.log(toHoursAndMinutes(115)); // ποΈ 01:55
console.log(humanHourMinute(90)); // ποΈ 1 jam 30 menit
console.log(humanHourMinute(60)); // ποΈ 1 jam
console.log(humanHourMinute(115)); // ποΈ 1 jam 55 menit
Disini kita menggunakan operator modulo (%
) untuk mendapatkan sisa menit.
padTo2Digits()
digunakan untuk menambahkan angka0
jika angkanya adalah satuan.
const padTo2Digits = (num) => num.toString().padStart(2, '0')
console.log(padTo2Digits(3)); // ποΈ '03'
console.log(padTo2Digits(6)); // ποΈ '06'
console.log(padTo2Digits(40)); // ποΈ '40'
Disini fungsinya agar yang dihasilkan olehtoHoursAndMinutes()
formatnya sama-sama 2 digit