Error handling in an asynchronous language works in a unique way and presents many challenges, some unexpected. There are seven main error handling patterns in Node.js. Let's briefly check them all. Simplest pattern that doesn't work asynchronously. Consider: Well-establish pattern, in which a function does its thing and if an error situation arises, it simply bails out throwing an error.