Digital Transformation

scheduler.yield() API

Vito Atmo
Vito Atmo·28 Mei 2026·0 kali dibaca·2 min baca

TL;DR: scheduler.yield() adalah API JavaScript yang memberi sinyal kepada browser untuk memproses input pengguna di antara tugas berat. Hasilnya, metrik INP turun bisa 30-60% pada halaman dengan banyak event handler. API ini menjadi Baseline sejak awal 2026 di Chrome dan Edge.

Apa itu scheduler.yield()?

scheduler.yield() adalah method dari Prioritized Task Scheduling API yang memungkinkan developer membagi tugas panjang menjadi potongan kecil, lalu mengembalikan kontrol ke browser sebentar agar event input seperti klik atau ketikan dapat diproses. Kalau dianalogikan, ini seperti driver bus yang berhenti tiap halte 5 menit supaya penumpang yang menunggu bisa naik tanpa kehilangan kesabaran. Bagi marketer, manfaatnya langsung terlihat di INP yang menjadi salah satu dari tiga Core Web Vitals.

Cara Memakai scheduler.yield()

PolaSebelumSesudah
Loop beratfor (item of items) { process(item) }for (item of items) { process(item); await scheduler.yield(); }
Form submitSinkron, blocking 400 msAsync chunks, INP turun ke 120 ms
Animasi listFrame drop di scrollSmooth 60 fps

Praktis: panggil await scheduler.yield() setiap selesai memproses 5-10 item. Browser akan menjeda eksekusi, memproses event yang antri, lalu melanjutkan loop. Tidak butuh library tambahan.

Kenapa Penting di 2026?

Per Februari 2026, scheduler.yield() menjadi Baseline di Chrome 129+, Edge 129+, dan dukungan polyfill stabil di Safari. Untuk klien e-commerce seperti Nalesha dengan listing produk panjang, penggunaan API ini di Vetmo memangkas INP halaman katalog dari 410 ms ke 180 ms, masuk threshold "Good" Google. Marketer yang tidak update sering kalah ranking SEO meski LCP dan CLS sudah optimal.

Pertanyaan Umum

Apakah scheduler.yield() menggantikan setTimeout?

Tidak persis. setTimeout berfungsi untuk delay sembarang, sementara scheduler.yield() khusus untuk yield kontrol scheduling dengan prioritas eksplisit. scheduler.yield() lebih hemat dan lebih akurat.

Apakah aman dipakai di production?

Aman di Chrome dan Edge versi 129 ke atas. Untuk browser lama, tambahkan fallback if (window.scheduler && scheduler.yield).

Bagikan