re: Hoist Your Vars! (Variable Hoisting in JavaScript) VIEW POST

re: I like to use this in try/catch statements as well as some if cases some times you just want to go const all the way but when you meet these cases...

I am curious, why is your variable being mutated in the catch block? that block is for errors


the times I need to do this is to show a default for something
or just ensure there is a valid value returned from the function, most of the time this is used on places where failure is not critical or it's a "top level" UI element function call

I'd say it's kind of fail behind scenes keep the good face up


A good example of when you might want to do this is if it’s a known exception and you are going to hand wave it away.

(async () => {
let result
try {
  // catch network issues
  const response = await fetch('https://example.com')
  // catch non-json data
  const data = await response.json()
  // catch inaccessible object
  result = data.messages
} catch(e) {
  result = { messages: [] }
Code of Conduct Report abuse