这是一个很好的测试,看看是否使用了有效的枚举值?

时间:2018-02-19 22:08:15

标签: javascript enums

继续我认为干净,简洁的语法,我在javascript中创建了以下枚举:

const DirectionOfTravel = Object.freeze({
    Clockwise: "clockwise",
    CounterClockwise: "counterclockwise",
    Neutral: "neutral"
});

它被称为:

const angleDeg = getAngle(pointA, pointB, pointC, DirectionOfTravel.CounterClockwise);

在getAngle函数中,因为它对返回正确的结果至关重要,所以我调用另一个函数valueInEnum来检查是否为行程方向提供了值:

const directionIsValid = valueInEnum(direction, DirectionOfTravel);

valueInEnum返回true或false:

function valueInEnum(value, enumObj) {

    return Object.values(enumObj).includes(value);
}

有更好的方法来处理这个吗?例如,将一个旅行方向和一个类下的valueInEnum分组是否有意义?

0 个答案:

没有答案