Parsing, Rendering, dan Streaming JSON Besar
Parsing sering bukan hambatan; rendering dan penyalinanlah yang menjadi hambatan. Optimalkan sepanjang empat lapisan "parse → traverse → render → transport" agar usaha Anda tidak sia-sia.
File JSON berukuran puluhan megabyte bisa membekukan main thread, dan JSON yang dirancang dengan cermat bisa menembus layanan; kategori ini membahas throughput sekaligus pertahanannya.
6 artikelParsing sering bukan hambatan; rendering dan penyalinanlah yang menjadi hambatan. Optimalkan sepanjang empat lapisan "parse → traverse → render → transport" agar usaha Anda tidak sia-sia.
JSON.parse sendiri aman; bahayanya ada pada apa yang terjadi setelahnya: deep merge, assignment berdasarkan path, inline ke HTML, kedalaman dan ukuran tanpa batas.
Minify memangkas 30-50% dari JSON mentah, tetapi gzip menghapus sebagian besar keuntungan itu. Angka terukur pada bentuk data nyata, plus empat kasus ketika minifikasi justru memperburuk keadaan.
File JSON 10MB bisa menjadi 30-50MB di heap V8. Pelajari biaya nyata string, object dan number, cara membuat baseline dengan process.memoryUsage, dan kapan streaming membantu.
Sendatan dimulai saat node DOM dibuat, bukan saat Anda menggulir. Membahas rendering collapse-first, virtual list, penyorotan pencarian, dan batas Worker, lengkap dengan metrik.
Ekspor JSON berukuran puluhan MB sering membuat editor teks dan alat daring membeku, padahal proses parsing sendiri hanya butuh beberapa ratus milidetik. Kami mengukur waktu dan memori di setiap tahap untuk sampel 45 MB berisi 500.000 rekaman, menunjukkan bahwa biaya sesungguhnya ada pada jumlah baris dan node, lalu menyusun tabel pemilihan alat berdasarkan ukuran file: tampilan daring, baris perintah, pemrosesan stream, dan aplikasi desktop.