2014년 3월 11일 화요일

Method - toString()

toString() 메서드는 별도의 전달인자 없이 호출되며, 메서드를 호출한 객체의 값을 어떤한 방식으로든 표현하는 문자열을 만들어 결과로 반환한다. 자바스크립트는 객체를 문자열로 변환해야 할 때 항상 이 메서드를 사용하는대, 예를 들면 문자열과 객체를 +연산자를 사용하여 연결하려 할 때나, 문자열을 전달인자로 받는 alert()같은 메서드의 인자로 객체를 전달하려 할 때, 객체의 toString() 메서드를 호출하여 이러한 변환작업을 수행한다.

기본으로 주어지는 toString() 메서드가 제공하는 정보는 그다지 유용하지 않다.
예를 들어 다음과 같은 호출은 단순히 "[object Object]"같은 문자열로 평가된다.

var s = { x:1, y:1 }.toString();

이와 같이 기본으로 주어지는 메서드가 그다지 유용한 정보를 제공하지 않다 보니, 많은 클래스가 자신들만의 고유한 toString() 메서드를 정의한다. 예를 들어 배열을 문자열로 변환하면 배열의 각 원소를 문자열로 변환하여 연결한 문자열을 얻을 수 있으며, 함수를 문자열로 변환하면 함수의 소스 코드를 얻을 수 있다.

댓글 없음:

댓글 쓰기