Webkit Develop Inspektor показывает длинные строки - PullRequest
2 голосов
/ 02 июля 2010

Когда я отлаживаю javascript в браузере webkit (например, Safari), часто у меня есть некоторые строковые переменные, и значения этих переменных часто очень длинные, webkit делает его короче с "..." в конце, но я хочу увидетьвсе значения этих переменных, как я могу это сделать?

Ответы [ 2 ]

2 голосов
/ 03 июля 2010

Насколько я знаю, все тексты обрезаются только при указании в качестве свойства объекта. Если вы регистрируете текстовую переменную напрямую, она должна отображать весь текст.

var foo = {bar:Array(1000).join('baz')};
console.log(foo); // this will truncate value of foo.bar
console.log(foo.bar); // this should show the whole text

Если вы все еще хотите изменить лимит, вот мое быстрое решение. Возможно, это не лучший способ сделать это, но если вы можете найти файл JS, отвечающий за инструменты Dev (для моей установки Google Chrome файл DevTools.js, для Safari 5 - InjectedScript.js), откройте его в текстовом В редакторе найдите функцию InjectedScript._describe. Внутри этой функции вы найдете

if (obj.length > 100)
   return "\"" + obj.substring(0, 100) + "\u2026\"";

увеличить предел с 100 до другого или убрать обе строки.

0 голосов
/ 24 сентября 2014

Я недавно обнаружил, что инструменты разработчика Chrome имеют функцию copy, которая копирует в буфер обмена - без усечения! Удобно также сериализовать объекты в элементы JSON и DOM в HTML, прямо в буфер обмена.

copy(someLongString); // no truncation!
copy({ foo : true }); // JSON
copy(someDOMElement); // HTML

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

...