1 분 소요

타입변환 | 연산자


타입변환

변수는 타입이 고정되있지 않고 변수에 다른 타입의 값을 대입하는 것이 가능하다.

자동 타입 변환
타입의 값을 기대하는 곳에 다른 타입의 닶이 오면 자동으로 타입을 변환

const a = "20"; // 문자열형
const b = "10"; // 문자열형
let result = a + b; // 2010, 문자열 연결
let result2 = a - b; // 10
let result3 = a * b; // 200
let result4 = a / b; // 2

const c = "자바스크립트";
let result5 = c - a; // NaN : 숫자로 변환할 수 없는 연산을 시도한 경우, 정의되지 않은 값이나 표현할 수 없는 값

문자열 + 문자열은 문자열 연결이 되고 그외에는 자동 타입 변환이 된다.

명시적 타입 변환
자동으로 타입변환을 지줜하지만 면시적으로 변환할 필요가 있능 때 타입변환 함수를 사용하며 강제로 타입 변환이 가능하다.

const a = "20"; // 문자열형
const b = "10"; // 문자열형

console.log(a + b); //2010
console.log(Number(a) + Number(b)); // 30

문자열 + 문자열은 결과가 문자열 연결로 나와야하지만 Number()이라는 문자열을 숫자형으로 바꿔주는 메소드를 사용하여 문자열을 숫자로 변환준다.

명시적 타입변환 메소드

종류 설명
Number() 문자를 숫자로 변환
String() 숫자나 불린등을 문자열형으로 변환
Boolean() 문자나 숫자등을 불린형으로 변환
Object() 모든 자료형을 객체형으로 변환
parseInt() 문자열형을 int형으로 변환
parseFloat() 문자열형을 float형으로 변환

연산자

연산자는 사칙연산은 물론 문자열과 문자열을 연결해서 새로운 문자열을 만들고 값의 크기를 비교하는 등 여러가지 동작을 의미한다.

연산자 종류
산술연산자 +, -, *, /, %, **(거듭제곱)
비교 연산자 <, >, >=, <=, ==, ===, !=, !==
대입 연산자 =, +=, -=, *=, /=, %=, **=
증감 연산자 ++a, a++, –a, a–
논리연산자 &&, ||, !
비트연산자 &, |, ^, «,  »
삼항 연산자 상수 = 조건식 ? 결과1 : 결과2