Обновленный `Function.prototype.toString`
· 1 мин. чтения
Function.prototype.toString()
теперь возвращает точно такие же фрагменты текста исходного кода, включая пробелы и комментарии. Вот пример, сравнивающий старое и новое поведение:
// Обратите внимание на комментарий между ключевым словом `function`
// и именем функции, а также на пробел после
// имени функции.
function /* комментарий */ foo () {}
// Ранее, в V8:
foo.toString();
// → 'function foo() {}'
// ^ комментарий отсутствует
// ^ пробел отсутствует
// Теперь:
foo.toString();
// → 'function /* комментарий */ foo () {}'