Как проверить возвращаемое значение функции JavaScript в отладчике Chrome? - PullRequest
46 голосов
/ 12 марта 2012

Исходя из GDB, он напечатал бы возвращаемое значение функции, когда он закончил. Есть ли способ получить эту информацию из отладчика Chrome без изменения отлаживаемого источника?

Ответы [ 7 ]

24 голосов
/ 03 декабря 2013

Исправление для этого было реализовано с 5 ноября 2013 года, но, по-видимому, только выпущено, пока я пишу это, в Chrome Canary.(Я вижу это в 33.0.1719.0, но не вижу его в бета-версии Chrome 32.0.1700.19 beta.)

Если версия, в которой вы работаете, имеет ее, то при переходе через возвратоператор Scope Variables Local включает в себя запись <return> со значением.

(мне нужно использовать Canary для основной отладки, которую я делаю, но не заметил присутствия <return>запись до просмотра уведомления в выпуске!)

6 голосов
/ 03 апреля 2017

Я использую бета-версию Chrome 57.0.2987.98 (64-битную версию), и она там, и очень приятно иметь ее.Вот скриншот:

enter image description here

5 голосов
/ 18 апреля 2015

Моя версия Chrome - 41.0.2272.118 m.Вот одна из веских причин, почему вы должны помещать сложные операторы return в отдельную строку.Если вы добавите точку останова в любой строке после возврата, Chrome добавит (в этом примере) лист «: true» под узлом «Локальный» панели «Переменные области действия» панели «Источники», когда точка останова установлена.хит.

function bar() {
   return true;
}    
(function foo() {
   return bar();
})(); // Place breakpoint here
3 голосов
/ 25 июня 2013

Нет, в настоящее время пути нет.

Однако для него существует открытый запрос улучшения .Он назначен, и на момент написания статьи он ожидает этого улучшения V8 .

1 голос
/ 12 марта 2012

Если вы установите точку останова, вы можете навести указатель мыши на переменную, и она покажет, какие значения - это работает для того, что вы пытаетесь сделать?

0 голосов
/ 25 октября 2013

Это все еще невозможно в Chrome, но возможно в Firefox 24+.Вам необходимо выйти из функции (Shift + F11), и он отобразит возвращаемое значение или исключение, выброшенное в области действия функции.

0 голосов
/ 12 марта 2012

Может это подойдет?

1.) Просмотр исходного кода страницы.

2.) Найдите определение функции и скопируйте его в буфер обмена.

3.) Измените определение функции в буфере обмена, чтобы записать значение, которое она собирается вернуть. (то есть console.log(x); return x;)

4.) Вставьте исправленное определение функции в консоль и запустите его. Это переопределит существующую функцию.

5.) Активировать функцию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...