<🌈 제로초님이 생각하는 프로그래밍의 목적>
1. 현실에 있는것을 컴퓨터 속으로 옮기는것
2. 옮겨놓은걸 통해서 자유롭게 기능을 만들고 다시 현실에 있는 문제를 해결하는 프로그램을 만드는 것
변수를 다룰줄 알면 자료형과 값을 활용해 현실의 문제를 해결 할 수 있다.
변수
- 잠깐 동안 특정한 값을 저장할 수 있음
- 변수를 활용하면 컴퓨터가 기억하게 할 수 있음
- 값을 저장하고 저장한 값을 불러올 수 있게 하는 것이 변수이다.
컴퓨터에서는 값을 저장해두는게 매우 중요하다. 저장을 해놔야 활용 가능하기 때문이다.
다음과 같이 복잡한 숫자를 저장하고 변수를 사용하면 쉽게 그 자료에 접근 할 수 있다.
앞으로 프로그래밍 할때 대부분의 경우에 값들을 변수에 저장해놓고 저장한거끼리 계산을 하는 경우가 많을 것이다.
console.log(string)는 되돌려주는 역할을 하는게 아니라 콘솔을 그림판처럼 쓰는 것이다.
<∙ 모양 오른쪽에 있는것이 컴퓨터가 되돌려준 값이다. 반환 값, 리턴값 이라고도 한다.
반면에 string 은 컴퓨터가 그 값이 뭔지 리턴해줬다.
단순히 화면에 그리는거와 값을 리턴해주는거는 엄청난 차이이다.
나중에 리턴값은 재활용 할 수 있지만 단순히 화면에 그리는거는 재활용 할 수 없다.
변수를 만드는 행위는 선언(declaration)한다고 표현하므로 앞으로는 변수를 선언한다고 하자.
let 변수명 = 식;
먼저 let으로 시작하는 명령을 선언문이라고 한다. total은 변수명이다. 대입 연산자보다 더하기 연산자의 우선순위가 높기 때문에 숫자를 더하는 식이 먼저 계산된다. 그리고 계산된 값 32000이 대입 연산자를 통해 변수의 값으로 저장된다. 변수를 선언함과 동시에 값을 대입하는 행위를 초기화(initialization)라고 한다. 끝으로, 변수 선언은 항상 결괏값이 undefined로 출력된다.
변수를 선언 하면 메모리에 변수가 저장이 된다.
비유를 들어서 머릿속에 그림을 그리면서 생각하자. 내용물이 든 상자를 예로 들자.
상자에는 이름표가 붙어 있고, 상자는 창고에 들어있다. 여기서 내용물이 값(32000) 이고, 이름표가 변수명(total)이며, 창고가 메모리이다. 사람이 창고에서 상자의 이름표를 보고 내용물을 찾듯이 개발자도 메모리에서 값을 변수명으로 가져올 수 있다. 상자를 만드는 것은 프로그램에서 변수 선언하는 것과 같다. 상자에 내용물을 넣는거은 = 연산자를 사용하는 것과 같다.
컴퓨터를 끄고 키면 계속 저장되는건 디스크, ssd
컴퓨터를 끄고 키면 날라가는 것은 RAM(메모리)
변수는 메모리 안에 저장되어 있으므로 메모리를 초기화(변수의 초기화와는 다름)하면 메모리에 저장되어 있던 변수도 같이 사라진다. 웹 브라우저를 새로고침하면 메모리가 초기화된다.
변수를 선언할 때 변수에 값을 대입하지 않아도 된다.
값을 대입하지 않은 변수를 입력하면 undefined가 출력된다.
이전 글에서 undefined를 설명할 때 undefined가 기본값의 역할을 한다고 했다. 이렇게 변수를 선언할 때 값을 대입하지 않으면 기본으로 값이 undefined가 된다.
내가 console 변수(정확히는 객체)를 선언하지도 않았는데 왜 console을 쓸 수 있는가?
- 이미 브라우저가 기본적인 도구를 제공해준다.
'강의 정리 > 제로초 자바스크립트' 카테고리의 다른 글
🔖 2-11. 변수 수정하기 (0) | 2023.03.04 |
---|---|
🔖 2-10. 변수 이름 짓기 (0) | 2023.03.04 |
🔖 2-8. undefined와 null (0) | 2023.02.27 |
🔖 2-7. 논리연산자 (0) | 2023.02.27 |
🔖 2-6. 불 값(boolean, 값들의 비교) (0) | 2023.02.27 |