Web Performance Optimization & Lighthouse · Pelajaran

Interaksi hingga Paint Berikutnya (INP)

Pahami INP, Core Web Vital yang mengukur responsivitas di dunia nyata, cara penghitungannya selama kunjungan, dan teknik untuk menjaga interaksi tetap gesit.

Pelajaran 4 dari 413 langkah

Interaksi hingga Paint Berikutnya (INP) adalah pelajaran Web Performance Optimization & Lighthouse gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Web Performance Optimization & Lighthouse, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Web Performance Optimization & Lighthouse mencakup 4 pelajaran total.

Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.

Responsiveness as a Vital

Interaction to Next Paint (INP) measures how quickly the page visually responds to user input across the whole visit. It became a Core Web Vital, replacing First Input Delay.

INP vs FID

FID only measured the first interaction's input delay. INP is broader: it considers all interactions and the full latency through event handling and rendering, not just the initial delay.

What an Interaction Includes

Each interaction's latency spans three parts: input delay (waiting for the main thread), processing time (event handlers), and presentation delay (rendering the next frame).

How INP Is Reported

Across a visit, INP reports roughly the worst interaction latency (with an allowance for outliers on pages with many interactions), so it reflects the user's worst-case responsiveness.

The Thresholds

  • Good: 200ms or less
  • Needs improvement: 200-500ms
  • Poor: over 500ms

The Main Thread Is the Bottleneck

Long tasks block the main thread so input cannot be handled promptly. Breaking up long JavaScript tasks is the single biggest lever for improving INP.

Yielding to the Main Thread

Break long work into chunks and yield so the browser can handle input between them. scheduler.yield() or a setTimeout based yield helps.

async function process(items) {
  for (const item of items) {
    handle(item);
    await new Promise(r => setTimeout(r, 0));
  }
}

Defer Non-Urgent Work

Update the UI immediately for feedback, then run heavy work afterward. Patterns like requestAnimationFrame for visual updates and deferring analytics keep handlers short.

button.addEventListener('click', () => {
  showSpinner();
  setTimeout(doHeavyWork, 0);
});

Reduce Rendering Cost

The presentation phase suffers from large DOM updates and expensive layout. Use content-visibility, virtualization, and minimal DOM changes to render the next frame faster.

Measuring INP

Capture INP in the field with the web-vitals library, and use the DevTools Performance panel's interaction track to see input delay, processing, and presentation for each event.

import { onINP } from 'web-vitals';
onINP(metric => console.log('INP', metric.value));

Improvement Checklist

  • Break up long tasks and yield.
  • Defer non-urgent work after paint.
  • Trim event handler work.
  • Reduce DOM size and rendering cost.

Quick Check

How does INP differ fundamentally from the metric it replaced, FID?

Recap

You learned INP measures whole-visit responsiveness across input delay, processing, and presentation, with a good threshold of 200ms. Improve it by breaking up long tasks, yielding to the main thread, deferring non-urgent work, and reducing rendering cost.

Gratis untuk memulai

Belajar Web Performance Optimization & Lighthouse dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
12
Pelajaran
48

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Interaksi hingga Paint Berikutnya (INP)” gratis?

Ya — teks lengkap “Interaksi hingga Paint Berikutnya (INP)” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Web Performance Optimization & Lighthouse, upgrade ke CoddyKit PRO. Kursus Web Performance Optimization & Lighthouse mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Interaksi hingga Paint Berikutnya (INP)”?

Pahami INP, Core Web Vital yang mengukur responsivitas di dunia nyata, cara penghitungannya selama kunjungan, dan teknik untuk menjaga interaksi tetap gesit. Kamu berlatih Web Performance Optimization & Lighthouse dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Web Performance Optimization & Lighthouse?

Tidak diperlukan pengalaman sebelumnya. Web Performance Optimization & Lighthouse di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Interaksi hingga Paint Berikutnya (INP)” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Web Performance Optimization & Lighthouse ini?

Ya. Setiap pelajaran Web Performance Optimization & Lighthouse menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Pengenalan Core Web Vitals
  2. Pendalaman LCP, FID, CLS
  3. Meningkatkan Metrik Interaksi Pengguna
  4. Interaksi hingga Paint Berikutnya (INP)
← Kembali ke Web Performance Optimization & Lighthouse