Функция toString() применяется в JavaScript для конвертации объектов в строки, потому что объекты сложно преобразовывать в строку. 2 Они могут содержать произвольное количество полей, и без программиста непонятно, какие из них важные. 2
Стандартная реализация метода toString() представляет собой заглушку и возвращает малоинформативную строку, например, '[object Object]'. 2 Поэтому имеет смысл поменять её на что-то более полезное. 1
Обычно метод toString() не используется для объектов явно, а вызывается JavaScript автоматически, если объект находится в контексте, где он должен быть представлен в виде строки. 2
При этом метод toString() не обязан возвращать именно строку: его результат может быть любого примитивного типа, например, число. 1