본문 바로가기

Web/Javascript

형 변환

묵시적 형변환

// number to string
var tmp = 100;
tmp = tmp + "";
alert(typeof tmp);	// string

// string to number
var tmp = "100";
tmp = tmp * 1;
alert(typeof tmp);	// number


명시적 형변환


Number(), String()

// number to string
var tmp = 100;
alert(typeof tmp);	// number
tmp = String(tmp);
alert(typeof tmp);	// string

// string to number
var tmp = "100";
alert(typeof tmp);	// string
tmp = Number(tmp);
alert(typeof tmp);	// number

parseInt(), parseFloat()

// number to string
var tmp = "100";
alert(typeof tmp);	// string
tmp = parseInt(tmp);
alert(typeof tmp);	// number

// string to number
var tmp = "100";
alert(typeof tmp);	// string
tmp = parseFloat(tmp);
alert(typeof tmp);	// number
parseInt("123.456");	// 123
parseInt("123km");	// 123
parseInt("w123");	// NaN
parseInt("05");	// 5
parseInt("09");	// 0 , 0으로 시작하는 진수는 8진수를 의미한다. 따라서 의도하지 않은 결과가 0값으로 나타난다.
parseInt("0x12");	// 18
parseInt("1100", 2);	// 12
parseInt("09", 10);	// 9
parseInt("10", 8);	// 8

parseFloat("123.456");	// 123.456
parseFloat("123.456km");	// 123.456
parseFloat("w123");	// NaN
parseFloat("05");	// 5
parseFloat("09");	// 9
parseFloat("0x12");	// 0, 10진수에 0x로 시작하는 수는 없기 때문에 0으로 결과가 나타난다.


'Web > Javascript' 카테고리의 다른 글

DATA TYPES  (0) 2018.01.11
Object.assign()  (0) 2017.03.23
렉시컬 환경(Lexical Environment)  (0) 2017.03.14
실행 콘텍스트  (0) 2017.03.14
클로저(closure)  (0) 2017.03.14