var three = true; const four = true; "> var three = true; const four = true; "> var three = true; const four = true; ">
<script>
	var one = true;
	const two = true;
</script>
<script type="module">
	var three = true;
	const four = true;
</script>
<script type="module">
	// ???
</script>

과거의 js는 글로벌 아니면 함수 스코프 였다. 그러나 2가지 예외가 있다고 한다! catch?

try {

} catch (err) {
	// ...
}

err은 catch 내부에서만 사용 가능하다.

한가지는 with 이다.

with (obj) {
}

strict 모드에서는 안쓴다... 안티 패턴이다...

{
  var one = true;
  const one = true;
}

Syntax 에러가 발생한다.

블록 내에 const가 있을 때 이 구문 이전 부분은 TDZ 이므로 one을 건드릴 수 없다는 것 같다!