There are some jQuery operations that can be either sync or async, e.g. $.ajax. If we apply error logging in the sync case, that means we will report errors multiple times and might even report errors that the application code handles safely. Made-up example:
try { $.ajax( '/endpoint.php', { async: false } ).done( function ( data ) { if ( !data ) { throw new Error( 'API call failed' ); } } ); } catch (e) { alert( 'API call failed, please try again later' ); }
This error should not be reported since the application code already deals with it.
Other potentially problematic methods beyond $.ajax are $.event.add for synthetic events, and $.ready when the page already finished loading.