Latihan 1: Cron adalah: Format Cron Job dan Contoh — Terminal
Latihan 1 dari materi Cron adalah: Format Cron Job dan Contoh di Terminal — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Lengkapi dua function di kode awal. Variabel expr1 sampai expr4 dan baris-baris console.log di bawahnya sudah ada, biarkan saja.
parseCron(expression): pecah expression di tiap spasi, lalu kembalikan object { minute, hour, day, month, weekday } sesuai urutan kolomnya. Semua nilainya tetap teks, apa adanya. Contoh: parseCron("0 9 * * 1-5") mengembalikan { minute: "0", hour: "9", day: "*", month: "*", weekday: "1-5" }, dan parseCron("5 4 * 12 0").month adalah "12".
nextRunDescription(expression): kembalikan deskripsi persis seperti ini:
0 9 * * 1-5 menjadi Setiap hari kerja jam 09:00
*/15 * * * * menjadi Setiap 15 menit
0 0 * * * menjadi Setiap hari jam 00:00
0 0 1 * * menjadi Setiap awal bulan jam 00:00
expression lain menjadi Terjadwal: diikuti expression-nya, misalnya nextRunDescription("30 2 * * 3") mengembalikan Terjadwal: 30 2 * * 3
Console harus mencetak tujuh baris ini, berurutan: 0, 9, 1-5, Setiap hari kerja jam 09:00, Setiap 15 menit, Setiap hari jam 00:00, Setiap awal bulan jam 00:00.
Hint
Cron expression punya lima kolom berurutan: menit, jam, tanggal, bulan, hari. parseCron cukup memecah teksnya di spasi dan memberi nama ke tiap bagian, tanpa mengubahnya jadi angka.
parseCron: ambil lima bagian dengan const [minute, hour, day, month, weekday] = expression.trim().split(/\s+/) lalu kembalikan object-nya. nextRunDescription: tangani */15 dulu, lalu bentuk jam HH:MM dengan padStart(2, "0"), cek hari 1-5, tanggal 1, dan semua bintang, dan sisanya "Terjadwal: " + expression.
const { minute, hour, day, weekday } = parseCron(expression); if (expression === "*/15 * * * *") return "Setiap 15 menit"; const jam = hour.padStart(2, "0") + ":" + minute.padStart(2, "0"); if (weekday === "1-5") return "Setiap hari kerja jam " + jam; if (day === "1") return "Setiap awal bulan jam " + jam; if (day === "*" && weekday === "*") return "Setiap hari jam " + jam; return "Terjadwal: " + expression;
</>{ }.css=>#idfn()
Versi baru
HyperSheets
bagian dari BelajarWeb.dev
0%
Membuka gerbang…
HyperSheets
Memperbarui Aplikasi
Versi baru tersedia. Halaman akan dimuat ulang otomatis...