Идея метода toString() состоит в том, что каждый класс объектов должен иметь собственное особое строковое представление и поэтому определять соответствую_ щий метод toString() для преобразования объектов в строковую форму. То есть определяя класс, необходимо определить для него специальный метод toString(), чтобы экземпляры класса могли быть преобразованы в осмысленные строки. Строка должна содержать информацию о преобразуемом объекте, т. к. это может потребоваться для нужд отладки. Если способ преобразования в строку выбран правильно, он также может быть полезным в самих программах. Кроме того,
9.4. Общие методы класса Object
|
|
|
|
можно создать собственную реализацию статического метода parse() для преоб_ разования строки, возвращаемой методом toString(), обратно в форму объекта.
Класс Complex из примера 9.2 уже содержит реализацию метода toString(), а в сле_ дующем фрагменте приводится возможная реализация метода toString() для класса Circle:
Circle.prototype.toString = function () {
return "[Круг радиуса " + this.r + " с центром в точке (" + this.x + ", " + this.y + ").]";
}
После определения такого метода toString() типичный объект Circle может быть преобразован в следующую строку:
"Круг радиуса 1 с центром в точке (0, 0)."