JavaScript 기초-2
데이터타입
JS 데이터 타입
자바스크립트의 데이터 타입은 한 가지의 심플한 데이터를 담을 수 있는 원시타입과 조금 더 복잡한 데이터를 담을 수 있는 오브젝트 타입으로 나뉜다.
원시타입은 string, number, boolean, bigint(숫자타입과 비슷하지만 더 큰 숫자 범위 할당 가능), symbol, null, undefined 총 7가지가 있고, 그 외는 Obeject 타입에 속한다. (function, array...)
- Number (숫자)
- String (문자열)
- Boolean (논리값 true/false)
false: 0, -0, '', null, undefined, NaN
true: -1, 'hello', []... (빈 배열은 object이기 때문에 무언가 데이터가 있다면 다 true)
- Null : 값이 없는 것(고의적으로 설정)
- Undefined: 아직 값이 설정되지 않은 것
let criminal;
console.log(criminal); // undefined
- Symbol
고유 식별자를 만들 떄 사용되는 심볼형
symbol()에 인자(description) 넣어 변수에 담으면, 데이터 값이 같아도 변수를 비교하면 false 반환 - BigInt
길이의 제약 없이 정수를 다룰 수 있게 해주는 숫자형
변수와 상수
let vs const vs var
변수 let
let
: 바뀔수 있는 값, 한번 값을 선언하고 나서 바꿀 수 있음
let value = 1;
console.log(value); // 1
value = 2;
console.log(value); // 2
한번 선언했으면 똑같은 이름으로 선언 불가
let value = 1;
let value = 2; // 오류 발생
단, 다른 블록 범위에서는 사용 가능
상수 const
: 한번 선언하고 값이 바뀌지 않는 값, 변수와 마찬가지로 같은 이름 선언 불가
const a = 1;
a = 2; // "Error: "a" is read-only"
const a = 2; // "a" has already been declared
변수를 선언하는 또 다른 방법 var
똑같은 이름으로 여러번 선언 가능 but, 모던 자바스크립트에서는 더이상 사용 X
연산자
비교 연산자
두 값을 비교 할 때 사용
const a = 1;
const b = 1;
const equals = a === b;
console.log(equals);
== vs === ?
= 문자가 3개 있을 때와 2개 있을 떄의 차이점은 2개 있을때에는 타입 검사를 하지 않는다는 것
const a = 1;
const b = '1';
const equals = a == b;
console.log(equals);
숫자 1과 문자 '1' 동일한 값으로 간주
== 대신 === 를 사용 권장
두 값이 일치하지 않는지 확인 할 때에는 !==
를 사용
!= 사용 시 타입 검사 X
조건문
if-else if 문
const a = 10;
if (a === 5) {
console.log('5입니다!');
} else if (a === 10) {
console.log('10입니다!');
} else {
console.log('5도 아니고 10도 아닙니다.');
}
// 10입니다!
// a = 5 -> "5입니다!"
// a = 7 -> "5도 아니고 10도 아닙니다."
switch/case 문
const a = 10;
if (a === 5) {
console.log('5입니다!');
} else if (a === 10) {
console.log('10입니다!');
} else {
console.log('5도 아니고 10도 아닙니다.');
}
// 10입니다!
// a = 5 -> "5입니다!"
// a = 7 -> "5도 아니고 10도 아닙니다."
특정 값이 무엇이냐에 따라 다른 작업을 하고 싶을 때 사용
const device = 'iphone';
switch (device) {
case 'iphone':
console.log('아이폰!');
break;
case 'ipad':
console.log('아이패드!');
break;
case 'galaxy note':
console.log('갤럭시 노트!');
break;
default:
console.log('모르겠네요..');
}
// device 값에 따라서 다른 결과가 출력
각 case 에서 실행할 코드를 작성하고 맨 마지막에 break;
break 를 하지 않으면 그 다음 case 의 코드까지 실행하기 때문!
default: 는 device 값이 우리가 case 로 준비하지 않은 값일 경우
Author And Source
이 문제에 관하여(JavaScript 기초-2), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@letthere/ABOUT-자바스크립트2저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)