The journey to becoming a developer

My future is created by what I do today, not tomorrow.

Programming/JavaScript

JavaScript - Variable, Closure

Millie 2022. 7. 9. 18:05

2주 만에 재개된 자바스크립트 스터디.

  • 오늘은 저번에 했던 단원들을 묶어서 복습하는 식으로 진행했다. 앞으로 당분간은 오늘같은 식으로 단원을 묶어서 진행할 예정이다.
  • 제이와 난정은 사정이 있어 참석하지 못했고 칸, 앨런, 도트와 함께 넷이서 진행했다.
  • 코드스쿼드 수료 이후의 첫 스터디였고 그동안 약간 풀어진 나사를 다시 조이는 계기가 되었다. 얕게 스쳐만 지나갔던 개념들을 선명하게 머릿속에 집어넣고 제대로 말할 수 있을 정도로 반복을 해야겠다고 느꼈다. 기억을 오래 남기고 싶어 다시 한 번 정리하는 시간을 가져본다.

🧩 Variable

변수란 무엇이고, 왜 필요한가?

  • 변수란 결국 프로그래밍을 할 때 데이터 관리를 용이하게 하기 위해 사용하는 것. 재사용하고 싶은 값을 메모리에 저장하고, 그 값을 읽기 위해서 변수를 쓴다.
  • 변수는 재사용하기 위한 값을 저장하기 위해 확보한 메모리 공간 자체를 말하기도 하고, 이 메모리 공간을 식별하기 위해 붙인 이름(식별자)을 가리키기도 한다.
  • 변수가 없다면 메모리 주소로 값에 직접 접근해서 값을 얻어내야 한다. 그러나 이 방법은 치명적인 오류를 발생시킬 가능성이 높다. 실수로 운영체제가 사용하고 있는 값을 변경하면 시스템이 멈출 수도 있다. 그래서 JavaScript는 개발자가 직접 메모리 제어를 하지 못하게 한다. 메모리 주소로 값에 직접 접근하는 것은 또 다른 문제가 있다. 값이 저장될 메모리 주소는 코드가 실행될 때 메모리의 상황에 따라 임의로 결정된다. 동일한 컴퓨터에서 동일한 코드를 실행한다 해도 코드가 실행될 때마다 값이 저장될 메모리 주소는 바뀐다. 즉 코드가 실행되기 전에는 값이 저장된 메모리 주소를 알 수 없다.

🧩 Identifier

변수를 종종 식별자라고도 하는데, 식별자란 무엇인가?

🧩 Hoisting

🧩 Closure