Значения в '{}' отличаются тем, что при расширении [duplicate]

Вот парсер на основе PHP , который анализирует HTML с использованием некоторого нечестивого регулярного выражения. Как автор этого проекта, я могу сказать вам, что можно анализировать HTML с регулярным выражением, но не эффективно. Если вам нужно решение на стороне сервера (как и для моего плагина wp-Typography WordPress ), это работает.

1
задан Growler 3 February 2017 в 20:26
поделиться

2 ответа

Объект, который вы видите на консоли, представляет собой моментальный снимок объекта в определенный момент времени - время его регистрации. Когда вы развернете объект, он снова оценит свойства.

В приведенном ниже примере я создал объект с двумя свойствами массива. Я зарегистрировал его в консоли, а затем добавил третье свойство, c.

Пока отображаются только первые два свойства, хотя я добавил только третье свойство. После расширения объекта в консоли, я вижу третий. Это последнее состояние объекта.

Если вы наведите указатель мыши на маленький синий значок i, он объяснит, что он сделал:

Значение ниже было оценено только сейчас.

4
ответ дан Gideon Pyzer 15 August 2018 в 19:12
поделиться

@ Гидеон Пизер прав. свойства были caculated и добавлены после расширения объекта в консоли.

Просто добавьте один код линии над кодом отладки и снова запустите инструмент chrome dev, вы увидите различия.

obj = Object.freeze(obj);  //add this line before your console.log
console.log(obj);

До:

После:

one аналогичный мой вопрос: Почему я не могу получить доступ к объекту javascript, показанному в инструменте chrome dev

0
ответ дан Kwan 15 August 2018 в 19:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: