Почему prototype пустой и одновременно со свойствами
Вот простой код для node:
class Samurai {
constructor(name) {
this.name = name
}
hello() { console.log(this.name) }
}
let shogun = new Samurai("Dimych")
console.log(Object.getOwnPropertyNames(Samurai.prototype))
console.log(Samurai.prototype)
Его результат:
[ 'constructor', 'hello' ]
{}
То есть у этого объекта есть собственные методы contructor и hello, но во втором выводе пустой объект, почему так происходит? При этом браузер выводит непустой объект в котором эти свойства перечислены
Источник: Stack Overflow на русском