Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

3일만에 끝내는 HTML, CSS, JS 기초

j35. 자바스크립트 자료형 변환 본문

JAVASCRIPT

j35. 자바스크립트 자료형 변환

눈의나라북범 2016. 6. 5. 15:53

자바스크립트 자료형 변환

String() 은 자료형 (data type) 을 문자열 (String) 으로 변환하고, Number() 는 자료형을 숫자 (Number) 로 변환합니다.

Boolean() 은 자료형을 불리언 (Boolean) 으로 변환합니다.

자바스크립트 자료형 (JavaScript Data Types) 에는 5 가지의 자료형이 있습니다.

	string		문자열
	number		숫자
	boolean		불리언
	object		객체
	function		함수

그리고 객체에는 3 가지 형태가 있습니다.

	Object		객체
	Date		날짜
	Array		배열

그리고 값을 가질 수 없는 자료형이 2 가지가 있습니다.

	null		널 값
	undefined		정의되지 않음

typeof 연산자는 변수, 객체, 함수 또는 식 (expression) 의 자료 형을 반환합니다.

typeof 연산자 (operator) 는 자바스크립트 변수의 자료형 (data type) 을 찾기 위해 사용됩니다.

<p>typeof 연산자는 변수, 객체, 함수 또는 식 (expression) 의 자료 형을 반환합니다.</p> <p id="typeofResult"></p> <script> document.getElementById("typeofResult").innerHTML = "<ul><li>문자열, typeof '이순신 장군';<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + typeof "이순신 장군" + "</li><li>불리언, typeof true;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + typeof true + "</li><li>숫자, typeof 3.14159;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + typeof 3.14159 + "</li><li>숫자 아님 (Not a Number), typeof NaN;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + typeof NaN + "</li><li>함수, typeof function () {}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + typeof function () {} + "</li><li>객체, typeof {name:'이순신', job:'장군', birth:1545}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + typeof {name:"이순신", job:"장군", birth:1545} + "</li><li>날짜, typeof new Date();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + typeof new Date() + "</li><li>배열, typeof [83,2,412,5,30];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + typeof [83,2,412,5,30] + "</li><li>null 값, typeof null;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + typeof null + "</li><li>값을 지정하지 않은 변수, typeof myVariable;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + typeof myVariable; + "</li></ul>" </script>
아래 사항에 대해 유의하여야 합니다. 숫자 아님 (Not a Number) 의 의미를 갖는 NaN 의 자료형이 숫자 입니다. 배열 (array) 의 자료형은 객체 (object) 입니다. 날짜 (date) 의 자료형 도 객체 입니다. null 의 자료형도 객체 입니다. 값을 지정하지 않은 변수가 있을 경우 자료형은 undefined 가 됩니다. typeof 는 어떤 객체가 배열인지, 날짜인지를 알려 주지는 못합니다.

typeof 연산자 (operator) 는 변수가 아니고 연산자입니다.

+ - * / 와 같은 연산자 들은 어떤 자료형을 갖지는 않습니다.

그렇지만, typeof 연산자는 항상 피연산자의 자료형을 포함하는 (containing) 문자열을 반환합니다.

자바스크립트 변수들은 다른 변수나 또는 다른 자료 형으로 변환될 수 있습니다.

	자바스크립트 함수를 사용하여 변환하는 방법이 있고,
	또, 자바스크립트 스스로 변환하는 방법이 있습니다.

전역 메서드 String() 는 숫자 (numbers) 를 문자열 (strings) 로 변환할 수 있습니다.

이것은 숫자 (numbers), 상수 (literals), 변수 (variables), 또는 수식 (expressions) 의 어떤 자료형 에도 사용될 수 있습니다.

숫자 메서드 (Number method) toString() 도 같은 역할을 합니다.

String(1 + 2) // 수식을 계산한 숫자를 문자열로 반환합니다. "3" 을 반환합니다. (1 + 2).toString() // 수식을 계산한 숫자를 문자열로 반환합니다. "3" 을 반환합니다.

전역 메서드 String() 은 불리언 (booleans) 을 문자열 (strings) 로 변환할 수 있습니다.

불리언 메서드 (Boolean method) toString() 도 같은 역할을 합니다.

String(true) // 문자열 "true" 를 반환합니다. true.toString() // 문자열 "true" 를 반환합니다.

전역 메서드 String() 은 또한 날짜 (dates) 를 문자열 (strings) 로 변환할 수 있습니다.

날짜 메서드 (Date method) toString() 도 같은 기능을 합니다.

String(Date()) // 현재의 날짜와 시각을 문자열로 반환합니다. Date().toString() // 현재의 날짜와 시각을 문자열로 반환합니다.

전역 메서드 (global method) Number() 는 문자열 (strings) 을 숫자 (numbers) 로 변환할 수 있습니다.

문자열 이 숫자를 포함하고 있는 경우 예를 들어 "1" 은 숫자 1 로 변환됩니다.

빈 문자열은 숫자 0 으로 변환됩니다.

숫자가 아닌 문자열인 경우는  NaN (Not a number, 숫자 아님) 으로 변환됩니다.

Number("") // 빈 문자열은 0 으로 반환됩니다. Number("1,2,3") // 숫자가 아닌 경우에는 모두 NaN 으로 반환됩니다.

전역 메서드 (global method) Number() 는 또한 날짜 (dates) 를 숫자 (numbers) 로 변환할 수 있습니다.

var myDate = new Date(); Number(new Date()); // 날짜를, 1970년 1월 1일 00:00:00 초부터 경과된 시간을 밀리초 단위의 숫자 (예 : 1456613205351) 형태로 반환합니다. myDate.getTime(); // 날짜를, 1970년 1월 1일 00:00:00 초부터 경과된 시간을 밀리초 단위의 숫자 (예 : 1456613205351) 형태로 반환합니다.

자바스크립트는 잘못된 자료 형 간의 연산을 시도할 때는, 올바른 자료 형으로 그 값을 변환하려고 시도 합니다.

그러나 항상 그렇게 된다고 보장될 수는 없습니다.

100 - "10" // 90 을 반환할 텐데, 문자열 "10" 이 자동으로 숫자 10 으로 변환 되었기 때문입니다.
자바스크립트는, 프로그램에서 객체나 변수를 출력하려고 하면, 자동으로 변수의 toString() 함수를 호출합니다.

<pre>typeof 연산자 (operator) 는 변수가 아니고 연산자입니다. + - * / 와 같은 연산자 들은 어떤 자료형을 갖지는 않습니다. 그렇지만, typeof 연산자는 항상 피연산자의 자료형을 포함하는 (containing) 문자열을 반환합니다.</pre> <hr /> <pre>자바스크립트 변수들은 다른 변수나 또는 다른 자료 형으로 변환될 수 있습니다. 자바스크립트 함수를 사용하여 변환하는 방법이 있고, 또, 자바스크립트 스스로 변환하는 방법이 있습니다.</pre> <hr /> <pre>전역 메서드 String() 는 숫자 (numbers) 를 문자열 (strings) 로 변환할 수 있습니다. 이것은 숫자 (numbers), 상수 (literals), 변수 (variables), 또는 수식 (expressions) 의 어떤 자료형 에도 사용될 수 있습니다. 숫자 메서드 (Number method) toString() 도 같은 역할을 합니다. <blockquote>String(1 + 2) // 수식을 계산한 숫자를 문자열로 반환합니다. "3" 을 반환합니다. (1 + 2).toString() // 수식을 계산한 숫자를 문자열로 반환합니다. "3" 을 반환합니다.</blockquote></pre> <hr /> <pre>전역 메서드 String() 은 불리언 (booleans) 을 문자열 (strings) 로 변환할 수 있습니다. 불리언 메서드 (Boolean method) toString() 도 같은 역할을 합니다. <blockquote>String(true) // 문자열 "true" 를 반환합니다. true.toString() // 문자열 "true" 를 반환합니다.</blockquote></pre> <hr /> <pre>전역 메서드 String() 은 또한 날짜 (dates) 를 문자열 (strings) 로 변환할 수 있습니다. 날짜 메서드 (Date method) toString() 도 같은 기능을 합니다. <blockquote>String(Date()) // 현재의 날짜와 시각을 문자열로 반환합니다. Date().toString() // 현재의 날짜와 시각을 문자열로 반환합니다.</blockquote></pre> <hr /> <pre>전역 메서드 (global method) Number() 는 문자열 (strings) 을 숫자 (numbers) 로 변환할 수 있습니다. 문자열 이 숫자를 포함하고 있는 경우 예를 들어 "1" 은 숫자 1 로 변환됩니다. 빈 문자열은 숫자 0 으로 변환됩니다. 숫자가 아닌 문자열인 경우는 NaN (Not a number, 숫자 아님) 으로 변환됩니다. <blockquote>Number("") // 빈 문자열은 0 으로 반환됩니다. Number("1,2,3") // 숫자가 아닌 경우에는 모두 NaN 으로 반환됩니다.</blockquote></pre> <hr /> <pre>전역 메서드 (global method) Number() 는 또한 날짜 (dates) 를 숫자 (numbers) 로 변환할 수 있습니다. <blockquote>var myDate = new Date(); Number(new Date()); // 날짜를, 1970년 1월 1일 00:00:00 초부터 경과된 시간을 밀리초 단위의 숫자 (예 : 1456613205351) 형태로 반환합니다. myDate.getTime(); // 날짜를, 1970년 1월 1일 00:00:00 초부터 경과된 시간을 밀리초 단위의 숫자 (예 : 1456613205351) 형태로 반환합니다.</blockquote></pre> <hr /> <pre>자바스크립트는 잘못된 자료 형 간의 연산을 시도할 때는, 올바른 자료 형으로 그 값을 변환하려고 시도 합니다. 그러나 항상 그렇게 된다고 보장될 수는 없습니다. <blockquote>100 - "10" // 90 을 반환할 텐데, 문자열 "10" 이 자동으로 숫자 10 으로 변환 되었기 때문입니다.</blockquote> 자바스크립트는, 프로그램에서 객체나 변수를 출력하려고 하면, 자동으로 변수의 toString() 함수를 호출합니다.</pre> <hr />

[광고] Udemy 동영상 강의로 보기


'JAVASCRIPT' 카테고리의 다른 글

j37. 자바스크립트 에러 처리  (0) 2016.06.05
j36. 자바스크립트 정규 식  (0) 2016.06.05
j34. 자바스크립트 break 와 continue  (0) 2016.06.05
j33. 자바스크립트 Loop 문  (0) 2016.06.05
j32. 자바스크립트 Switch 문  (0) 2016.06.05