2012-02-03 2 views

risposta

7

A volte definiamo una variabile in una classe di JS 'enumerazioni' lungo queste linee:

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

e quindi fare riferimento semplicemente come un C# enumerazione.

+0

Grazie. Stai capitalizzando il nome dell'oggetto qui perché si riferisce a una funzione di costruzione (Object)? – Ben

+0

Non particolarmente, solo un richiamo a C# e il modo in cui useremo maiuscole. – dougajmcdonald

0

Fondamentalmente, non è possibile.

La tipizzazione forte non esiste in JavaScript, quindi non è possibile limitare i parametri di input a un tipo specifico o una serie di valori.

0

Non esiste un tipo di enumerazione in JavaScript. Si potrebbe, tuttavia, avvolgere un oggetto con un metodo getter e setter attorno ad esso come

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; } 
    }; 
})();