как конструктор, и его прототип имеет f () как ...

с 1:

Я экспериментировал с прототипами объектов и конструкторов в JS, когда заметил, что:

function f(a) {
  this.a = a;
  this.x = 1
}

function f2(a) {
  this.a = a;
  this.x = 4
}

f2.__proto__ = f(9);

var of2 = new f2(4);

как-то делает f2 () вложенным в егоprototype -> constructorтак что у меня есть бесконечное вложение (как показано ниже):

Может ли кто-нибудь объяснить такое поведение, пожалуйста? Или, может быть, это просто ошибка, вызванная инструментом?

Вопрос 2Так что, если это нормально, как это работает в памяти? Это работает над ссылками, или просто вставить прототип в конструктор, конструктор в прототип и так далее? Если вторая гипотеза верна, почему память моего компьютера все еще в порядке и не горит?

Ответы на вопрос(0)

Ваш ответ на вопрос