Enum

Enumeration class. Each enum propertiy has the properties "ordinal", "name" and "text".

Fra 03.11.2019. Se den seneste versjonen.

Dette scriptet burde ikke installeres direkte. Det er et bibliotek for andre script å inkludere med det nye metadirektivet // @require https://update.greasyforks.org/scripts/391854/746197/Enum.js

Forfatter
Gerrit
Versjon
0.2
Lagd
01.11.2019
Oppdatert
03.11.2019
Size
2,4 kB
Lisens
I/T

Usage Examples


class COLOR extends Enum {};
COLOR.init([ { "RED": "red" }, { "GREEN": "green" }, { "BLUE": "blue" } ]);
let col = COLOR.GREEN;

console.log(COLOR.GREEN.name);       // "GREEN"
console.log(COLOR.GREEN.text);       // "green"
console.assert(COLOR.GREEN.ordinal); // "1"

console.log(col[1] === COLOR.GREEN); // "true"

console.assert(col + ""); // "green"
console.assert(col * 1);  // "1"



class COLOR extends Enum {};
COLOR.init([ "RED", "GREEN", "BLUE" ]);

console.log(COLOR[2].name)            // "BLUE"
console.log(COLOR[2].text);           // ""
console.log(COLOR[2].ordinal);        // "2"

console.log(COLOR[2] === COLOR.BLUE); // "true"

console.log(col + ""); // "BLUE"
console.log(col * 1)   // "2"



class FLAGS extends Enum {};
FLAGS.init([ "FIRST", "SECOND", "THIRD", "FOURTH"], 1, ord => ord<<1);

console.log(FLAGS.FOURTH | FLAGS.SECOND); // "10"
长期地址
遇到问题?请前往 GitHub 提 Issues。