用于将字符串限制为多个离散值的JavaScript惯用法

在C#中,我可能会使用枚举。

在JavaScript中,我怎样才能将一个值限制为一组离散值的惯用方式?


我们有时会在这些行中定义一个JS类'枚举'中的变量:

var Sex = {
    Male: 1,
    Female: 2
};

然后像C#枚举一样引用它。


JavaScript中没有枚举类型。 然而,你可以用一个getter和setter方法来包装一个对象

var value = (function() {
   var val;
   return {
      'setVal': function( v ) {
                   if ( v in [ listOfEnums ] ) {
                       val = v;
                   } else {
                       throw 'value is not in enumeration';
                   }
                },
      'getVal': function() { return val; }
   };
 })();

基本上,你不能。

JavaScript中不存在强类型,因此无法将输入参数限制为特定类型或值集。

链接地址: http://www.djcxy.com/p/91769.html

上一篇: JavaScript idiom for limiting a string to a number of discrete values

下一篇: Make bootstrap drop down buttons cascading