Как назначить объект JavaScript переменной, которая была напечатана с помощью console.log
?
Я нахожусь в консоли Chrome. С Ruby я использовал бы test = _
для доступа к последнему напечатанному элементу.
Как назначить объект JavaScript переменной, которая была напечатана с помощью console.log
?
Я нахожусь в консоли Chrome. С Ruby я использовал бы test = _
для доступа к последнему напечатанному элементу.
Вы можете переопределить стандартную функцию console.log()
своим собственным, добавив требуемое поведение:
console.oldLog = console.log;
console.log = function(value)
{
console.oldLog(value);
window.$log = value;
};
// Usage
console.log('hello');
$log // Has 'hello' in it
Таким образом, вам не нужно изменять существующий код ведения журнала. Вы также можете расширить его, добавив массив и сохранив всю историю печатных объектов/значений.
В инструментах разработчика Chrome вы можете получить доступ к последнему элементу $_
:
> 1+1;
2
> $_
2
Если вы хотите сделать это с уже зарегистрированным объектом (одно время), хром-консоль предлагает хорошее решение.
Наведите курсор на напечатанный объект в консоли, щелкните правой кнопкой мыши, затем нажмите "Сохранить как глобальную переменную". Chrome назначит его временному имени var для вас, которое вы можете использовать в консоли.
Вот ссылка chrome для comand line api. Существует переменная $_, но она "возвращает значение последнего оцениваемого выражения" не печатается, вы можете сделать свою собственную функцию журнала следующим образом:
function log(data){
console.log(data);
return data;
}
// after that you can access last printed value by $_
Пожалуйста, обратите внимание, что моя функция, например, возможности console.log гораздо более продвинутые
Производный ответ mirrormx, но более удобный. Мне не нужно писать функцию, и я могу просто поместить ее в любую точку на данный момент.
console.log(window.$log = data);