enum.js
/**
* 逆配列を求める(ただし1対1対応限定)
*/
function getEnum(arr) {
var i;
var len = arr.length;
var ret = {};
for(i=0; i<len; i++) {
ret[arr[i]] = i;
}
return ret;
}
使い方
var magiArr = ["MELCHIOR", "BALTHASAR", "CASPER"];
var magi = getEnum(magiArr);
// 定数の感覚で呼び出す
var a = magi.MELCHIOR; // => 0
var b = magi.BALTHASAR; // => 1
var c = magi.CASPER; // => 2
// 元のキーもわかる
magiArr[a] // => "MELCHIOR"
magiArr[b] // => "BALTHASAR"
magiArr[c] // => "CASPER"