Tengo una función que acepta un parámetro de cadena. Este parámetro solo puede tener uno de los pocos valores posibles definidos. ¿Cuál es la mejor forma de documentar lo mismo? ¿Debe shapeType definirse como enum o TypeDef o algo más?
Shape.prototype.create = function (shapeType) {
// shapeType can be "rect", "circle" or "ellipse"...
this.type = shapeType;
};
Shape.prototype.getType = function (shapeType) {
// shapeType can be "rect", "circle" or "ellipse"...
return this.type;
};
La segunda parte del problema es que los posibles valores de shapeType
no se conocen en el archivo que define shapeType
como lo que sugiera. Hay varios archivos aportados por varios desarrolladores que podrían agregar a los posibles valores de shapeType
.
PD: estoy usando jsdoc3
enum
para la definición y una unión para el parámetro de la función:ShapeType|string
. Sin embargo, las enumeraciones no admiten la adición de subtipos después de la declaración en el compilador de cierre.