Untuk mendeteksi apakah sebuah halaman sudah memuat JavaScript, kita bisa menggunakan Document.readyState salah satu Web API untuk menangani document.

Lantas, seperti apakah ada contoh studi kasus yang sudah mengimplementasikan hal di atas?

Di website komunitas PHPBali menggunakan pustaka Flatpick (datepicker) dan Choice (select dropdown) untuk menginput atau mengedit topik dan kegiatan. Saya menggunakan atribut async di kedua pustaka tersebut dengan tujuan agar keduanya lebih cepat dimuat di halaman.

Pakai async untuk memuat sumber yang benar-benar kita perlukan saat memuat halaman dan gunakan defer untuk menunda sumber yang tidak diperlukan saat memuat halaman

Masalahnya muncul ketika mengimplementasikan async, browser memberikan error bahwa pustaka tersebut tidak didefinisikan.

Library Choice tidak ada di browser

Dengan mengimplementasikan Document.readyState di fase complete maka masalah ini bisa ditangani dengan mudah.

Referensi