Latihan 1: Virtual Scrolling — Performance

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

Lengkapi function getVisibleItems(scrollTop, containerHeight, itemHeight, totalItems) yang menghitung baris mana yang perlu dirender.

  1. startIndex: Math.floor(scrollTop / itemHeight).
  2. Banyak baris yang dirender: Math.ceil(containerHeight / itemHeight) + 1 (1 baris cadangan).
  3. endIndex: startIndex ditambah banyak baris itu, tapi gak boleh lebih dari totalItems. Pakai Math.min.
  4. offsetY: startIndex * itemHeight.
  5. visibleCount: endIndex - startIndex.
  6. Return satu object dengan key persis ini, dengan urutan ini: startIndex, endIndex, offsetY, visibleCount.

Yang dinilai nilai kembaliannya:

Dua baris console.log di kode awal biarkan saja.

Hint