Как правильно обратиться к сеттеру родительского класса в дочернем в JavaScript? Если в прототипе родительского класса я декларирую свойство, способом:Foo.prototype = { get target() { return this._target; }, set target(value) { this._target = value; } } Каким образом в дочернем классе мне вызвать родительский сеттер? Единственный способ который я вижу - через вызов getOwnPropertyDescriptor. Если уж так, то есть ли этот способ затратный с точки зрения производительности, т.е. getOwnPropertyDescriptor. каждый раз объект дескриптора и чего это стоит?
В дочернем классе вы можете вызвать родительский сеттер следующим образом:
class Child extends Parent { set target(value) { super.target = value; } }
Использование super ключевого слова позволяет обратиться к методам или свойствам родительского класса в дочернем классе.
Использование Object.getOwnPropertyDescriptor для доступа к сеттеру родительского класса не является оптимальным решением с точки зрения производительности, так как это потребует дополнительных операций. Использование super является более прямым и эффективным способом вызова родительского сеттера.
В дочернем классе вы можете вызвать родительский сеттер следующим образом:
class Child extends Parent {set target(value) {
super.target = value;
}
}
Использование super ключевого слова позволяет обратиться к методам или свойствам родительского класса в дочернем классе.
Использование Object.getOwnPropertyDescriptor для доступа к сеттеру родительского класса не является оптимальным решением с точки зрения производительности, так как это потребует дополнительных операций. Использование super является более прямым и эффективным способом вызова родительского сеттера.