У мене є функція, яка приймає один параметр рядка. Цей параметр може мати лише одне з декількох визначених можливих значень. Який найкращий спосіб документувати те саме? Чи слід shapeType визначати як enum, TypeDef чи щось інше?
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;
};
Друга частина проблеми полягає в тому, що можливі значення shapeType
невідомі у файлі, який визначається shapeType
як все, що ви пропонуєте. Існує кілька файлів, внесених декількома розробниками, які можуть додати до можливих значень shapeType
.
PS: використовую jsdoc3
enum
для визначення та об'єднання для параметра функції:ShapeType|string
. Однак перелічення не підтримують додавання підтипів після оголошення в Closure-compiler.