based on: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/EventLoop
stack frame is empty before next event is processed. So why in folowing snippet alert displays 1 instead of 0 because alert function should run before callback
var a=0;
var b={};
$(b).on("event", function (){
a++;
});
$(b).trigger("event");
alert(a);
Thanks!