Существует вопрос , с которым я столкнулся при поиске, что означают буквы перед объектами в Chrome инструментах разработчика.
В моем случае у меня есть буква m
перед переменной $scope
в AngularJS. Например:
vm
m {$id: 1520, $$childTail: m, $$childHead: b, $$prevSibling: m, $$nextSibling: null, …}
Итак, приведенный выше вопрос приходит к следующему выводу:
Это название конструктора, используемого для создания объекта модели.
Этот вывод вызывает несколько вопросов. Я считаю, что они тесно связаны друг с другом, поэтому я решил создать для них один вопрос.
В чем разница между обычным объектом JS и объектом модели ?
В чем разница между обычным JS конструктором объекта и конструктором объекта модели?
Почему Chrome решил добавить буквы для объектов модели, но решил не делать этого для обычных JS объектов?
ОБНОВЛЕНИЕ
После первого комментария к вопросу я решил попробовать следующий пример:
function A() {}
*undefined*
new A()
*A {}*
{}
*{}*
Это помогло мне понять, что буква, предшествующая объекту, является просто именем конструктора. Правильно ли мое понимание?