Written by Yuri Takhteyev14 January 2015 Any non-trivial JavaScript requires dealing with asynchronicity. JavaScript can't wait, so if something that you want is not available right away, your code can't just sit around until the result comes back. Instead, the baseline solution is a callback: you provide a function that will be called when the result is either available or the operation is known