JavaScript switch文で変数を使う時の注意点

switch文のcaseで変数を使いたいケースがあるとします。

しかし、以下のコードでは、messages 変数は同じブロック内で重複しているためエラーになります。

switch(value){
	case 'a':
  	const messages = 'hello';
    console.log(messages);
  case 'b':
  	const messages = 'hi';
    console.log(messages);
  default:
  	const messages = 'default';
    console.log(messages);
}

このような場合は、case節を{}で囲むことで解決できます。

switch(value){
	case 'a': {
  	const messages = 'hello';
    console.log(messages);
  }
  case 'b': {
  	const messages = 'hi';
    console.log(messages);
  }
  default: {
  	const messages = 'default';
    console.log(messages);
  }
}