JS Day 1 변수,자료형,연산자
14 Dec 2020 | JavascriptJS Day 1 변수,자료형,연산자
-
변수 let, const, var
-
let : 모던스크립트에서는 var대신 let을 쓴다
-
const : 변하지 않는 변수(상수) 선언시
-
var : 블록 개념이 없어서 변수 선언시 외부에서 접근이 가능하다 (함수 내 선언 제외)
함수의 재선언이 가능하다
함수 선언 전에도 사용이 가능하다 (호이스팅 hoisting)
선언은 호이스팅이 되지만 할당은 안됨
-
-
자료형
- 동적 타입(dynamically typed)언어로 자료형을 명시하지 않는다
- 문자형 : “”, ‘’, `` / 큰,작은 따옴표는 똑같음 / 백틱(backtick)은 중간에 연산식을 넣을 수 있음
- 숫자 : bigint 는 숫자 뒤에 n을 붙여 사용 (9007199254740991 보다 큰 값)
- null 은 비어있는 값을 나타낼 때 사용
- 값을 할당하지 않으면 undefined 출력
- 객체형 : 복잡한 데이터 구조를 표현할 떄
- 심볼형 : 객체의 고유 식별자를 만들때 사용
- 자료형을 알 때 : typeof a 혹은 typeof(a)
-
형 변환
- 수학 연산자 + 문자열 = 문자열이 숫자형으로 자동변환
alert("6" / "2"); // output : 3 alert("6" * "2"); // output : 12
- Number(value) -> 숫자형으로 명시적으로 변환 (null = 0, undefined = NaN)
- Boolean(value) -> 숫자0,빈 문자열,null,undefined,NaN 등은 false 그 외엔 true 로 변환
- String(value) -> 문자형으로 명시적 변환
-
기본 연산자
- 단항 연산자
- 단항 + 연산자 : 숫자 이외의 자료형을 숫자형으로 변환 (Number(…)와 같은 기능)
let A = "3"; let B = "5"; console.log(A + B); //output : 35 console.log(+A + +B); //output : 8
- 이항 연산자
- 문자열과 숫자열의 + 연산자
let A = "2"; let B = 2; let C = "2"; console.log(A + B + C); //output : 222 let A = 2; let B = 2; let C = "2"; console.log(A + B + C); //output : 42
- 거듭제곱 연산자 : ** ex) 2 ** 3 = 8
- 할당 연산자의 값 반환 : A = value ex) value 를 A에 대입하고 value 반환
let A = 2; let B = 3; let C = 10 - (A = B + 3); console.log(A); //output : 6 console.log(C); //output : 4
- 단항 연산자
-
비교 연산자
- 문자열과 숫자열 비교시 숫자로 변환하여 비교
let A = 0; let B = "0"; console.log(A == B); //output : true
-
일치 연산자
- === 일치 연산자
let A = 0; let B = false; console.log(A == B); //output : true, false는 숫자 0으로 간주한다 console.log(A === B); //output : false, 자료형이 다르므로