I sometimes manipulate properties of my class via this[property] = value. This however generates a public member 'property' in my ESDoc generated document:
class Foo {
/**
* Creates a new instance of Foo
*
* @constructor
*/
constructor() {
/** @type {string} */
this.foo = 'bar';
}
/**
* Set the given property in the class.
*
* @param {string} property property to set
* @param {*} value new value
*/
manipulate(property, value) {
this[property] = value;
}
}
