पर सेट करना मेरे पास एक गेटर संपत्ति के साथ एक ईएस 6 कक्षा (बैबेलज़ के साथ ट्रांसकंपल) है। मैं समझता हूं कि ये गुण डिफ़ॉल्ट रूप से गणना योग्य नहीं हैं। हालांकि, मुझे समझ नहीं आता क्यों मुझे Object.defineProperty
ईएस 6 क्लास गेटटर को
// Declare class
class Person {
constructor(myName) {
this.name = myName;
}
get greeting() {
return `Hello, I'm ${this.name}`;
}
}
// Make enumerable (doesn't work)
Object.defineProperty(Person, 'greeting', {enumerable: true});
// Create an instance and get enumerable properties
var person = new Person('Billy');
var enumerableProperties = Object.keys(person);
// => ['name']
प्रोटोटाइप ऑब्जेक्ट पर इसे परिभाषित करें। 'Object.defineProperty (Person.prototype, ...)' – Louy
@Louy आपके सुझाव के साथ एक ही प्लंकर - कोई परिवर्तन नहीं: http://plnkr.co/edit/QkQ1JbFEjAAOIFPCtPk7?p=preview – lightswitch05