10 апреля 2010, 12:12

JavaScript и константы

Все знают, что в JS констант нет, но с помощью супер-мега-гибкого ООП даже их можно реализовать:
"use strict";
var constant = (function () {
    var constants = {};
    return {
        define: function (name, value) {
            if (!name in constants) {
                constants[name] = value;
                return true;
            }
            return false;
        },
        defined: function (name) {
            return name in constants;
        },
        get: function (name) {
            return constants[name];
        }
    };
}());

Пример использования:
// check if defined
constant.defined("lol"); // false
// define
constant.define("lol", "ok!"); // true
// check again
constant.defined("lol"); // true
// attempt to redefine
constant.define("lol", "lolok"); // false
// was it constant or it changed?
// get da, get da, get da value
constant.get("lol"); // "ok!"


Ваш комментарий

адрес не будет опубликован

ХТМЛ не работает


Ctrl + Enter