И еще такой вариант:
function Bla() {
this.getElement = function() {
this.$init();
delete this.getElement;
return this.getElement();
};
}
(function(){
this.$init = function() {
this.$element = document.createElement("div");
};
this.getElement = function() {
return this.$element;
};
}).call(Bla.prototype);
Насколько он оправдан?