Benchmark Javascript dengan jsPerf dan performane.now()
- Categories:
- javascript
Untuk melakukan benchmark terhadap Javascript biasanya saya menggunakan dua cara, yaitu menggunakan jsPerf dan function performance.now
di Google Chrome.
jsPerf
Jika terkait DOM HTML, saya lebih suka menggunakan jsPerf saat melakukan benchmark karena tidak perlu dipusingkan dengan setup html file.
Contohnya adalah ketika saya ingin mengetahui mana yang lebih baik antara jQuery3 $('.my-class')
, document.querySelector('.my-class')
, dan document.getElementsByClassName('my-class')
seperti gambar dibawah ini.
Berdasarkan hasil diatas dapat diketahui bahwa document.getElementsByClassName
memiliki performansi tertinggi dan document.querySelector
walaupun merupakan native dari Javascript, namun tidak berbeda jauh dengan performa selector jQuery.
performance.now()
Jika tidak terkait DOM, saya lebih suka menggunakan performance.now() di Google Chrome, lebih sederhana dan tidak perlu login.
Berikut ini adalah contoh ketika saya hendak melakukan optimasi Javascript dengan mengganti jQuery selector dengan selector native Javascript:
Dari hasil diatas noJqueryFunction
jauh lebih cepat dibanding jqueryFunction
dan dari hasil tersebut barulah kode baru diimplementasikan karena memiliki peforma yang lebih baik.
Recent Posts
How to Defend Against Brute-Force and DoS Attacks with Fail2ban, Nginx limit_req, and iptables
In this tutorial, I’ll explain how to protect your public-facing Linux server and Nginx web server from common threats, including brute-force and DoS attacks.
Is Getting AWS Solutions Architect Associate Certification Worth It?
If you are a full-time Software Engineer, there's no strong need to pursue this certification.
DevSecOps
My Notes about DevSecOps
AWS Secrets Manager
Explanation about AWS Secrets Manager with example code.
Envelope Encryption
Envelope encryption is the practice of encrypting plaintext data with a data key, and then encrypting the data key under another key.