Enumeration class. Each enum propertiy has the properties "ordinal", "name" and "text".
Verzia zo dňa
Tento skript by nemal byť nainštalovaný priamo. Je to knižnica pre ďalšie skripty, ktorú by mali používať cez meta príkaz // @require https://update.greasyfork.org/scripts/391854/746337/Enum.js
Usage Examples
const COLORS = class COLOR extends Enum {}.init({ "RED": "red" , "GREEN": "green" , "BLUE": "blue" }); console.log(COLORS[0] === COLORS.RED); // "true" console.log(COLORS[1] === COLORS.GREEN); // "true" console.log(COLORS[2] === COLORS.BLUE); // "true" console.log(COLORS.GREEN.name); // "GREEN" console.log(COLORS.GREEN.text); // "green" console.assert(COLORS.GREEN.ordinal); // "1" console.assert(COLORS.GREEN + ""); // "green" console.assert(COLORS.GREEN * 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(COLOR.BLUE + ""); // "BLUE" console.log(COLOR.BLUE * 1); // "2"class FLAGS extends Enum {}; FLAGS.init([ "FIRST", "SECOND", "THIRD", "FOURTH"], 1, ord => ord<<1); console.log(FLAGS.FOURTH | FLAGS.SECOND); // "10"