[JavaScript] 자료형부터 연산까지

하영(Emma)·2025년 4월 23일

JavaScript

목록 보기
2/8
post-thumbnail

4. 자료형 (Data Types)

JavaScript는 다양한 데이터 타입을 제공하며, 동적 타이핑(dynamic typing) 언어로, 변수에 저장되는 값의 타입이 실행 중(runtime)에 자동으로 결정된다.


기본 데이터 타입

타입명설명예시
Number정수와 실수를 포함한 숫자형1, 3.14, -10
String문자열"Hello", '123'
Boolean참 또는 거짓true, false
Array순서가 있는 값들의 리스트[1, 2, 3]
Object키-값 쌍으로 구성된 구조체{ name: "Emma" }
Null의도적으로 비워진 값null
Undefined값이 할당되지 않은 상태undefined

✅ JavaScript에서는 정수와 실수를 모두 Number 타입으로 처리한다.


자동 형변환 (Type Coercion)

JavaScript는 연산자에 따라 값의 타입을 자동으로 변환하기도 한다.

연산자동작 방식예시
+문자열이 포함되면 문자열로 변환"3" + 2 → "32"
-, *, /, <, >숫자형으로 변환하여 계산"5" - 1 → 4

+는 문자열 우선, 나머지 연산자는 숫자 우선!

자동형변환

⚠️ ==!=은 형변환이 일어나므로 예상치 못한 결과가 나올 수 있다.
항상 ===, !==를 사용하는 것이 안전한 Best Practice이다.


명시적 형변환 (Type Casting)

문자열 → 숫자

Number("123");     // 123
parseInt("3.14");  // 3
parseFloat("3.14");// 3.14

숫자 → 문자열

String(123);       // "123"
(123).toString();  // "123"

5. 연산자와 표현식

  • JavaScript의 연산자는 값을 계산하거나 조건을 비교할 때 사용된다.
  • 대표적으로 산술 연산자, 대입 연산자, 비교 연산자, 논리 연산자, 삼항 연산자가 있다.

산술 연산자 (Arithmetic Operators)

연산자설명예시결과
+더하기5 + 27
-빼기5 - 23
*곱하기5 * 210
/나누기10 / 25
%나머지10 % 31
**거듭제곱2 ** 38
console.log(5 + 2);    // 7
console.log(10 % 3);   // 1
console.log(2 ** 4);   // 16

대입 연산자 (Assignment Operators)

연산자설명예시결과
=값 할당a = 1010
+=더한 후 할당a += 5a = a + 5
-=뺀 후 할당a -= 3a = a - 3
*=곱한 후 할당a *= 2a = a * 2
/=나눈 후 할당a /= 2a = a / 2
%=나머지 후 할당a %= 3a = a % 3
let a = 10;
a += 5;  // 15
a *= 2;  // 30

비교 연산자 (Comparison Operators)

연산자설명예시결과
==값이 같음 (느슨한 비교)5 == "5"true
===값과 타입 모두 같음5 === "5"false
!=값이 다름 (느슨한 비교)5 != "5"false
!==값 또는 타입이 다름5 !== "5"true
>크다7 > 5true
<작다3 < 5true
>=크거나 같다5 >= 5true
<=작거나 같다4 <= 2false
console.log(5 == "5");    // true
console.log(5 === "5");   // false

논리 연산자 (Logical Operators)

연산자설명예시결과
AND양쪽 모두 true면 truetrue && falsefalse
OR하나라도 true면 truefalse or truetrue
NOT논리값 반전!truefalse

AND == &&
OR == ||
NOR == !
사실 이 내용을 표 안에 넣고 싶었는데, 표 마크다운 할 때 | 이 기호가 자꾸 표로 인식돼서 넣기 실패했다 ㅠ.. 이스케이프 코드도 안먹는데 방법 아시는 분?

let a = true;
let b = false;
console.log(a && b);   // false
console.log(a || b);   // true
console.log(!a);       // false

삼항 연산자 (Ternary Operator)

조건에 따라 값을 구분할 수 있는 간단한 연산자이다.
형식: 조건 ? 참일 때 값 : 거짓일 때 값

let score = 85;
let result = score >= 60 ? "합격" : "불합격";
console.log(result);  // "합격"

profile
Data Scientist, interested in CV, NLP

0개의 댓글