Bir dize parametresini kabul eden bir işleve sahibim. Bu parametre, tanımlanmış birkaç olası değerden yalnızca birine sahip olabilir. Aynı şeyi belgelemenin en iyi yolu nedir? ShapeType, enum veya TypeDef veya başka bir şey olarak tanımlanmalı mı?
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;
};
Sorunun ikinci kısmı, önerdiğiniz her şeyi shapeType
tanımlayan dosyada olası değerlerinin bilinmemesidir shapeType
. Çeşitli geliştiricilerin katkıda bulunduğu ve olası değerlerini ekleyebilecek birden çok dosya var shapeType
.
Not: Kullanıyorum jsdoc3
enum
tanımı ve işlevi parametresi için bir birlik için:ShapeType|string
. Ancak numaralandırmalar Closure-compiler'da bildirimden sonra alt türlerin eklenmesini desteklemez.