В протоколе Chrome Devtools что такое `injectedScriptId`?

В CDP, когда, например, выполняется Debugger.evaluateOnCallFrame для оценки какого-либо объекта, ответ будет содержать свойство objectId, которое выглядит как {injectedScriptId: 1, id: 413}. А injectedScriptId никогда не меняется (по крайней мере, я никогда не замечал, чтобы он менялся). Подсказка id кажется уникальным идентификатором объекта в памяти.

Связанный (даже более важный, но просто ищущий подтверждения) вопрос: является ли id в objectId уникальным идентификатором объекта во всей программе/процессе? Могу ли я положиться на него, чтобы построить сериализованное строковое представление переменных без циклических ссылок?

Итак, какова цель injectedScriptId и что такое InjectedScript?

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
337
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Ответ от Джоэл Эйнбиндер:

This is an internal implementation detail so you shouldn’t rely on it and it may change at any time without warning, or not behave consistently.

Injected script is the internal thing that we inject into a JavaScript execution context to manage remote objects and other things. That’s why they have separate id counters.

So no, the internal id is not unique. Use the string.

Другие вопросы по теме