[JS] 형변환

nana·2023년 1월 4일
0

🟡 JavaScript

목록 보기
4/23
post-thumbnail

🖍️ 형변환 ( Type Conversion )

String ( ) → 문자형으로 변환

Number ( ) → 숫자형으로 변환

Boolean ( ) → 불린형으로 변환


⭐️ 예제

"Hello" + "World" = "Hello World"  // 문자 + 문자 = 이어줌 

100 + 200 = 300   // 숫자 + 숫자 = 두 수를 더한 합

"100" + 200 =// 문자 + 숫자 = ❓

⭐️ 예제

const mathScore = prompt("수학 몇점?");  // 90 입력
const engScore = prompt("영어 몇점?");   // 80 입력
const result = (mathScore + engScore) / 2;

console.log(result);  // ❗️ 4540 

// prompt 입력 → 문자형
// 문자 + 문자 = 9080 / 2 , 문자형이라도 나누기 같은 표현식은 숫자형으로 자동 변환되어 계산됨
// "6" / "2" = 3 → 자동 형변환 → 원인을 찾기 힘은 오류가 발생함
// 의도를 가지고 원하는 타입으로 변환이 필요 → 명시적 형변환

💟 String ();

  • 괄호 안에 타입을 문자형으로 변경해줌
console.log(
  String(3),
  String(true),
  String(false),
  String(null),
  String(undefined)
);

// "3", "true", "false", "null", "undefined"

💟 Number ();

  • 괄호 안에 타입을 숫자형으로 변경해줌
  • 숫자와 문자가 포함되어있으면 NaN을 반환
  • 사용자로 부터 입력받은 값이 문자형인 경우 자주 사용
console.log(
  Number("1234"),      // 1234
  Number("1234abcd"),  // NaN
  Number(true),        // 1  
  Number(false)        // 0
);

💟 Boolean ();

  • false 케이스 기억하기
// false 값
console.log(
  Boolean(0),       
  Boolean(""),       
  Boolean(null),    
  Boolean(undefined),   
  Boolean(NaN)   
);

❗️ 이 외의 값은 true 반환


// true 값
console.log(
  Boolean(1),       
  Boolean(1234),    
  Boolean("javascript")   
);

☹︎ 주의사항

Number(null)       // 0
Number(undefined)  // NaN

Number(0)    // false
Number('0')  // true

Number('')   // false
Number(' ')  // true - 공백
profile
✧ 중요한건 꺾이지 않는 마음 🔥 ᕙ(•ө•)ᕤ 🔥

0개의 댓글