Latihan 1 dari materi Caching Strategies di DevOps — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Isi function parseCacheControl(header) yang mengubah header Cache-Control jadi object, seperti yang dilakukan CDN.
Pecah header di koma dengan split(","), lalu trim() tiap bagian supaya spasi setelah koma hilang.
Bagian yang mengandung = (misalnya max-age=86400): pecah jadi nama dan nilai dengan split("="), dan simpan nilainya sebagai angka dengan Number(...).
Bagian tanpa = (misalnya public atau no-cache): simpan dengan nilai true.
Kembalikan object-nya. Nama key persis seperti di header ("max-age", "s-maxage", "no-store"), dan urutannya sama dengan urutan di header.
Baris console.log di kode awal biarkan. Yang diuji adalah nilai kembalian function-nya, dibandingkan persis (urutan key ikut dibandingkan):
parseCacheControl("public, max-age=86400") harus mengembalikan { public: true, "max-age": 86400 }.
Header Cache-Control adalah daftar directive yang dipisah koma. Tiap directive jadi satu key di object: yang punya tanda sama dengan membawa angka, yang gak punya bernilai true.
Pakai header.split(",").map(s => s.trim()) lalu loop tiap bagian. Kalau part.includes("="), pecah dengan part.split("=") dan simpan Number(nilai); kalau gak, simpan true. Tulis result[key], karena nama seperti max-age mengandung tanda minus.
const result = {}; for (const part of header.split(",").map(s => s.trim())) { if (part.includes("=")) { const [key, val] = part.split("="); result[key] = Number(val); } else { result[part] = true; } } return result;
</>{ }.css=>#idfn()
Versi baru
HyperSheets
bagian dari BelajarWeb.dev
0%
Membuka gerbang…
HyperSheets
Memperbarui Aplikasi
Versi baru tersedia. Halaman akan dimuat ulang otomatis...