Как конструктор объекта имеет доступ к методу .toString ()? - PullRequest
1 голос
/ 24 октября 2019

Я экспериментирую с методом Object.prototype.toString(). Я понимаю, что созданные объекты [[Prototype]] связаны с объектом Object.prototype, поэтому я могу получить доступ к этому методу. Однако вызов Object.toString() также работает. Мне интересно, где конструктор Object может получить доступ к этому методу, если у него нет прямого метода .toString(). Связан ли конструктор объекта [[Prototype]] со своим собственным объектом-прототипом?

Object.toString() // "function Object() { [native code] }"

1 Ответ

2 голосов
/ 24 октября 2019

Object - это Function, то есть object.

Это сбивает с толку, но поскольку конструктор Object является функцией, он разделяет общие методы Object.prototype, и когда вы запускаете toString для функции, как правило, она возвращает код функции.

...