Latihan 1: Memory Management — Performance

Latihan 1 dari materi Memory Management di Performance — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.

Buat function findLeaks(codeSnippets) yang menerima array berisi potongan kode (string) dan mengembalikan daftar potensi memory leak.

  1. Siapkan array kosong untuk hasilnya.
  2. Periksa tiap potongan sesuai urutannya. Nomornya (index) mulai dari 0.
  3. Kalau potongan itu mengandung setInterval tapi gak mengandung clearInterval, tambahkan { snippet: index, leak: "interval-not-cleared" }.
  4. Kalau potongan itu mengandung addEventListener tapi gak mengandung removeEventListener, tambahkan { snippet: index, leak: "listener-not-removed" }.
  5. Return array-nya. Kalau gak ada yang bocor, hasilnya [].

Tulis key-nya dengan urutan snippet dulu, baru leak, karena hasilnya dibandingkan sebagai teks JSON. Cek interval dulu, baru listener.

Array snippets dan console.log di kode awal biarkan saja. Dia mencetak [{"snippet":0,"leak":"interval-not-cleared"},{"snippet":2,"leak":"listener-not-removed"}], tapi baris itu gak dinilai.

Yang dinilai nilai kembaliannya:

Hint