JavaScript has become more and more popular in recent years because its rich feature set as being dynamic, interpreted and object-oriented with first-class functions. Furthermore, JavaScript is designed with event-driven and I/O non-blocking model that boosts the performance of overall application especially in the case of . To take advantage of these characteristics, many design patterns that implement asynchronous programming for JavaScript were proposed. However, choosing a right pattern and implementing a good asynchronous source code is a challenge and thus easily lead into robustless application and low quality source code. Extended from our previous works on exception handling code smells in JavaScript, this research aims at studying the impact of three JavaScript asynchronous programming patterns on quality of source code and application. | Javascript asynchronous programming