✅ 프로그래밍은 데이터 처리를 하는 것임을 이해한다.
✅ 변수 사용은 데이터를 편리하게 저장하고 꺼내 쓰는 것임을 이해한다.
✅ 변수의 선언과 값의 할당에 대해서 설명하고 코드로 작성할 수 있다.
✅ 값으로 변환된 표현문이 변수에 할당되어 담기는 과정을 설명할 수 있어야 한다.
✅ 자바스크립트에서 변수의 선언과 값의 할당에 대해서 설명할 수 있다.
✅ 변수 선언과 값 할당에 사용되는 용어에 대해서 정확하게 알 수 있다.
✅ =
가 "같다"라는 의미가 아니라 할당연산자임을 이해할 수 있다.
✅ num = num + 1
이 "같다"라는 의미가 아니라 값을 할당하는 것임을 설명할 수 있다.
선언(declaration) : 변수를 생성하는것 ex) let age
할당(assignment) : 변수에 값을 저장하는 것 ex) age = 12;
선언과 할당 동시에 가능 ex) let age = 12;
변수를 선언할때 var, let , const 를 사용할 수 있다.
var : ES6 전에 변수를 선언하던 키워드
let : 변수 재할당이 가능할때 사용한다
const : 변수 재할당이 불가능 할때 사용한다
변수 선언 표기법
1 카멜케이스(Camel Case) : 단어의 첫글자를 대문자로 씀(camelCase)
2 스네이크 케이스(snake case) : 언더바 사용(snake_case)
3 파스칼 케이스(pascal case) : 첫 글자와 중간 글자들이 대문자(PascalCase)
📎javascript에서는 주로 카멜케이스를 사용한다
변수 이름 설정 규칙
1 특수문자를 제외한 문자, 숫자, 언더스코어(_), 달러($) 기호를 포함할 수 있다.
2 숫자로 시작하는 것은 허용하지 않는다.
3 예약어는 변수이름으로 사용할 수 없다
📎 예약어란? 프로그래밍 언어에서 사용되고 있거나 사용될 예정인 단어
ex) class, const, else, if 등
자바스크립트에서 표현식은 값을 반환하는 식 or 코드다
// sum이라는 변수에 1 + 2 라는 식이 평가되어 생성된 3이라는 숫자값을 할당한다
let sum = 1 + 2;
✅ 자바스크립트에서 원시 자료형과 참조 자료형이 무엇인지 알 수 있다.
✅ 원시 자료형 string
, number
, boolean
, undefined
의 의미를 이해할 수 있다.
✅ 타입마다 다른 속성과 메소드가 있다는 것을 이해할 수 있다.
✅ typeof
를 활용하여 특정 값의 타입을 확인할 수 있다.
✅ 비교 시 엄밀한 비교( ===
과 !==
)의 필요성을 이해할 수 있다.
원시타입 | 설명 |
---|---|
숫자 (number) | 정수와 실수 구분 없이 하나의 숫자 타입만 존재한다 |
문자열 (string) | 문자열 |
불리언 (boolean) | 참(true) 거짓(false) |
undefined | var키워드로 선언된 변수에 암묵적으로 할당되는 값 |
null | 값이 없다는 것을 의도적으로 알려줄때 사용하는 값 |
심벌 (symbol) | ES6에서 추가된 7번째 타입 |
객체타입 | 설명 |
---|---|
객체 , 함수 , 배열 등 | 원시 자료형이 아닌 모든 것은 참조 자료형이다 |
비교연산자 | 의미 | 설명 |
---|---|---|
x == y | 동등비교 | x와 y의 값이 같음 |
x === y | 일치비교 | x와 y의 값과 타입이 같음 |
x != y | 부동등비교 | x와 y의 값이 다름 |
x !== y | 불일치비교 | x와 y의 값과 타입이 다름 |
자바스크립트의 객체는 키(key)과 값(value)으로 구성된 프로퍼티(Property)들의 집합입니다. 프로퍼티의 값으로 자바스크립트에서 사용할 수 있는 모든 값을 사용할 수 있습니다. 프로퍼티 값이 함수일 경우, 일반 함수와 구분하기 위해 메서드라 부른다.
원시 자료형
한칸의 고정된 저장공간을 가진다
각 변수의 데이터 값을 복사하기 때문에 기존의 데이터에 영향을 끼치지 않는다
let a = 1;
a = b;
b = 2;
a; // 1
참조 자료형
값이 여러개 이기 때문에 한칸의 고정된 저장공간을 가지게 되면 비효율적이다
참조 자료형의 데이터는 heap이라고 부르는 별도의 데이터 보관함에 저장되고
변수에는 데이터가 저장된 메모리 상의 주소가 저장된다.
주소를 복사하기 때문에 복사한 데이터에서 원소를 변경하게 된다면
주소의 데이터를 변경하는 것이기 때문에 기존의 데이터에도 영향을 끼치게 된다
let e = [10,20];
let f = e;
f[0] = 50;
e; //[50,20]