I believe that all javascript engines in modern browsers are single-threaded, which means that the callback cannot happen until the current execution path ends. This will mean that the stack is completely unwound and the callback will occur (essentially) with the new stack.
The stack size will only increase when a function is called or a local variable is declared. The stack will decrease again when you leave the scope that caused the increase.
, .
, , javascript . (, ), , .