Flash Lite 2 |
|||
| Flash Lite 2.x ActionScript 언어 참조 설명서 > ActionScript 클래스 > Object > toString(Object.toString 메서드) | |||
public toString() : 문자열
지정된 객체를 문자열로 변환하여 반환합니다.
지원 버전: ActionScript 1.0, Flash Lite 2.0
String - 문자열입니다.
이 예제에서는 일반 객체에 있는 toString()의 반환값을 보여 줍니다.
var myObject:Object = new Object(); trace(myObject.toString()); // 출력: [object Object]
보다 의미 있는 값을 반환하도록 이 메서드를 재정의할 수 있습니다. 다음 예제에서는 내장 클래스인 Date, Array 및 Number에 대해 이 메서드를 재정의했다는 것을 보여 줍니다.
// Date.toString()은 현재 날짜와 시간을 반환합니다.
var myDate:Date = new Date();
trace(myDate.toString()); // 출력: [current date and time]
// Array.toString()은 배열 내용을 쉼표로 구분된 문자열로 반환합니다.
var myArray:Array = new Array("one", "two");
trace(myArray.toString()); // 출력: one,two
// Number.toString()은 숫자 값을 문자열로 반환합니다.
// trace()에서 값이 문자열인지 아니면 숫자인지 여부를 알려주지 알 수 없기 때문에
// typeof()를 사용하여 toString()이 작동하는지 여부를 테스트할 수도 있습니다.
var myNumber:Number = 5;
trace(typeof (myNumber)); // 출력: number
trace(myNumber.toString()); // 출력: 5
trace(typeof (myNumber.toString())); // 출력: string
다음 예제에서는 사용자 정의 클래스에서 toString()을 재정의하는 방법을 보여 줍니다. 먼저 Vehicle 클래스 정의만 포함하는 Vehicle.as라는 텍스트 파일을 Configuration 폴더의 Classes 폴더에 만들어 넣습니다.
// Vehicle.as의 내용
class Vehicle {
var numDoors:Number;
var color:String;
function Vehicle(param_numDoors:Number, param_color:String) {
this.numDoors = param_numDoors;
this.color = param_color;
}
function toString():String {
var doors:String = "door";
if (this.numDoors > 1) {
doors += "s";
}
return ("A vehicle that is " + this.color + " and has " + this.numDoors + " " + doors);
}
}
// FLA 파일에 넣을 코드
var myVehicle:Vehicle = new Vehicle(2, "red");
trace(myVehicle.toString());
// 출력: A vehicle that is red and has 2 doors
// 비교를 위해 valueOf()를 호출합니다.
// myVehicle의 원시 값이 없으므로 객체가 반환됩니다.
// toString()과 동일하게 출력합니다.
trace(myVehicle.valueOf());
// 출력: A vehicle that is red and has 2 doors