변수: 프로그램이 실행되는 도중에 계속해서 바뀌는 값을 저장하기 위한 이름 / 어떤 값을 이름을 붙여서 부르고 싶을때 이용
자바스크립트에서 변수를 만드는 방법:
let age = 25;
25라는 값을 age라는 이름으로 부를 수 있게 됐다고 생각.
이때, age를 변수의 이름,변수 그 자체라고 부를 수 있음.
let 키워드와 함께 변수를 만드는 작업 >> 변수 선언(변수를 쓰겠다)
console.log();라는 명령어는 괄호안에 있는 값을 그대로 콘솔에 출력하는 역할을 하는 자바스크립트의 기능
console.log()에 변수의 이름을 전달하게 되면 변수의 값 출력
console.log(age);
변수는 프로그램 실행 도중에 값을 바꿀 수 있음.
let age = 25;
console.log(age); //25출력
age = 30;
console.log(age); //30출력
변수는 프로그램 실행 도중에 계속해서 바뀔 수 있는 값을 저장하는 이름 붙은 저장소
변수의 이름 규칙
1. 기호 사용 불가 XX (기호가 어디에 위치하던지 상관없이)
아래 예시는 모두 불가능한 변수명
let ^age = 25; //에러 발생
let ag+e = 25; //에러 발생
변수명에 유일하게 사용해도 되는 기호 : _ , $
let ag_e = 25;
let ag_$e = 25;
console.log(ag_$e); //25출력
let 6age = 25; //에러 발생
숫자가 뒤에 있으면 상관 X (숫자를 넣고 싶다면 변수명 중간이나 끝에 넣는것을 추천!)
let age6 = 25;
let if = 25; //에러 발생
<변수의 이름 규칙>
1. _와 $를 제외한 기호는 변수명에 사용할 수 없다!
2. 변수명은 반드시 숫자가 아닌 문자로 시작해야 한다!
3. 예약어를 피해야 한다!
변수를 만들 때 let 말고 사용할 수 있는 키워드 var 존재
var age = 25;
console.log(age); // 25출력
//중간에 변수처럼 값을 바꿔도 잘 실행됨.
age = 30;
console.log(age); // 30출력
사실, var와 let은 변수를 만드는 방식(변수를 선언하는 방식), 중간에 값을 변경할 수 있는 변수를 생성한다는 것도 똑같다.
그러나, var는 우리 프로그래머들을 함정에 빠뜨리게 할 수 있다.
var age = 25;
console.log(age); // 25출력
//값 재할당X , 또 한번 선언해도 아무 이상없음.(이건 잘못된 동작😨)
var age = 30;
console.log(age); // 30출력
//만약
var age = 25; //A개발자 작성(숫자)
console.log(age); // 25출력
//1000줄의 코드 있을수도?!
var age = "30"; //B개발자 작성(문자)
console.log(age); // 30출력
//문제가 생길 가능성 굉장히 높아짐.
var와 다르게 let은 변수를 중복해서 선언하는 것을 허용하지 XX
let age = 25;
console.log(age); // 25출력
let age = 30;
console.log(age); // 에러발생
//우리 프로그래머들이 함정에 빠질 가능성을 줄여줌.
그래서 var 대신에 앞으로 변수를 선언하고 사용할 때 let 키워드만 사용할 예정.
상수 : 어떤 값을 이름으로 부르기 위해 존재
let이 들어올 자리에 const가 들어오면 상수가 됨.
선언 이후 값을 절대로 바꿀 수 없음.
그렇기 때문에, 상수는 선언과 동시에 초기화가 이루어지지 않아도 에러 발생(나중에 값을 넣을 수 없기 때문).
const age = 25;
console.log(age);
//상수와 변수의 다른점
//변수는 중간에 값을 바꿔도 문제 X
//상수는 값을 바꾸면 오류 발생
age = 30; //에러 발생