(original) (raw)
Доброго дня всем.
У меня появилась необходимость в некоем хранилище, который мог бы хранить некие объекты, которые динамически меняются по мере изменения состояний данных на странице.
То есть суть проста. В хранилище хранятся, по сути, однотипные объекты, которые могут иметь специфический идентификтатор (русские буквы с точками). Помимо всего прочего, хочется иметь методы для работы с объектом, а именно: поместить в хран новый объект, взять существующий по id, проверить есть ли объект внути (тоже по id), посчитать количество и удалить при надобности.
Быстро написал вот такой вот лёгонький наборчик (без претензий на гениальность, простите ;) :
var iElmObject = new Function (); //Хранилище.
iElmObject.elements = {};
iElmObject.prototype.setElement = function (id, name) {
iElmObject.elements[id] = name;
}
iElmObject.prototype.getElement = function (id) {
return iElmObject.elements[id];
}
iElmObject.prototype.isElement = function (id) {
return this.elements.getElement(id) != null;
}
iElmObject.prototype.delElement = function (id) {
delete iElmObject.elements[id];
}
iElmObject.prototype.countElements = function () {
var i = 0;
for (var item in iElmObject.elements) {
i++;
}
return i;
}
iElmObject.prototype.setElement("некий ID", {});
iElmObject.prototype.setElement("некий Айдишник", {});
iElmObject.prototype.setElement("некий ИД!", {});
alert(iElmObject.prototype.countElements())
iElmObject.prototype.delElement("некий Айдишник");
alert(iElmObject.prototype.countElements())
вроде бы работает.
после этого подумалось. Ну впринципе, вопрос снят. Однако жешь вдруг в голову пришёл доугой вопрос.
А может всё это уже реализовано в $() гениальным ALL ?
зачем изобретать велик то. Погуглил, ничего не нарыл. Может что есть уже готовое?
А если нет - может кто поможет создать из этого $() объект? а то я не рыл так глубоко jQuery, в основном юзал готовое, описаное и банальное.
спасибо.