Сводка
Метод toString() возвращает строку, представляющую исходный код функции.
Синтаксис
function.toString(indentation)
Параметры
indentationВышла из употребления с версии Gecko 17- Количество пробелов для отступов в строковом представлении исходного кода. Если параметр меньше или равен
-1, большинство ненужных пробелов будет удалено.
Описание
Объект Function переопределяет метод toString, унаследованный из объекта Object; он не наследует метод Object.prototype.toString. Для объектов Function метод toString возвращает строку, представляющую объект в форме объявления функции. То есть, метод toString декомпилирует функцию и возвращает строку, включающую ключевое слово function, список аргументов, фигурные скобки и исходный код тела функции.
JavaScript вызывает метод toString автоматически в случае, когда объект Function представляется в качестве текстового значения, то есть, когда функция соединяется со строкой.
Спецификации
| Спецификация | Статус | Комментарии |
|---|---|---|
| ECMAScript 1-е издание. | Стандарт | Изначальное определение. Реализована в JavaScript 1.1. |
| ECMAScript 5.1 (ECMA-262) Определение 'Function.prototype.toString' в этой спецификации. |
Стандарт | |
| ECMAScript 2015 (6th Edition, ECMA-262) Определение 'Function.prototype.toString' в этой спецификации. |
Стандарт |
Совместимость с браузерами
| Возможность | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Базовая поддержка | (Да) | (Да) | (Да) | (Да) | (Да) |
| Возможность | Android | Chrome для Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Базовая поддержка | (Да) | (Да) | (Да) | (Да) | (Да) | (Да) |
Особый случай с Gecko
Начиная с Gecko 17.0 (Firefox 17 / Thunderbird 17 / SeaMonkey 2.14), метод Function.prototype.toString() реализован с сохранением исходного кода функции. Декомпилятор был удалён, так что параметр indentation больше не требуется. Смотрите баг 761723 для подробностей.