데이터 형 변환
1. 데이터 형 변환의 종류 : 자동 형 변환, 명시적 형 변환
1) 자동 형 변환 처리되는 경우
a) 숫자 타입에 문자를 더하여 문자 타입의 결과 반환함
ex)
var num = 123;
num = num +"";
document.writeln(typeof num); // => 결과 : string
b) 문자 타입에 숫자를 곱하면 숫자 타입이 됨
ex)
var str = "123";
str = str *1;
document.writeln(typeof str); // => 결과 : number
2) 명시적으로 형 변환하는 경우
a) String -> Number
ex) var str = "123"; // str에 문자열 할당
document.writeln(typeof str); // 현재 타입 확인
str = Number(str); //str의 문자열을 숫자로 형 변환
document.writeln(typeof str); // 현재 타입 확인 => 결과 : string number
b. Number -> String
ex) str = String(str); // 숫자형의 str을 문자열로 형 변환
document.writeln(typeof str); // 현재 타입 확인 => 결과 : number string
c. parseInt()
: numberString에 포함된 숫자 형태의 값을 정수로 반환하며,
접두사를 정수로 구분할 수 없음
parseInt(numberString)
parseInt(numberString, [radix])
ex)
document.writeln(parseInt(12.35)); // 실수를 정수로 형 변환 ==> 결과 : 12
document.writeln(parseInt("123.9")); // 문자열을 정수로 형 변환 ==> 결과 : 123
document.writeln(parseInt("123Wor")); // 문자열을 정수로 형 변환 ==> 결과 : 123
document.writeln(parseInt("And123Wor")); // 접두사 문자는 정수로 변환 안됨 ==> 결과 : NaN
d. parseFloat()
: numberString에 포함된 숫자와 같은 숫자 값을 반환하며,
접두사를 부동 소수점 숫자로 변환 불가
parseFloat(numberString)
parseFloat(numberString, [radix])
ex)
document.writeln(parseFloat(12.35)); // 실수값 출력 ==> 결과 : 12.35
document.writeln(parseFloat("123.9")); // 문자열을 실수로 형 변환 ==> 결과 : 123.9
document.writeln(parseFloat("123Wor")); // 문자열을 실수로 형 변환 ==> 결과 : 123
document.writeln(parseFloat("And123Wor")); // 접두사의 문자는 변환 불가 ==> 결과 : NaN
2. 형 변환 연산자 : typeof
1) 데이터 형식을 문자열로 반환함
2) 반환되는 값 : 'number', 'string', 'boolean', 'object', 'function', 'undefinded'