In JavaScript OOP there are attributes called private attributes. Knowing if an attribute is private or public, an API user can focus on the API as a whole.
Let’s create some private attributes.
Note: See a guid()
example function here.
(function() {
let private_id = guid(); // This function should generate a unique UUID
let init = function() {
// Private attribute holder
this[private_id] = {};
// Create_time is a private attribute
this[private_id].creation_time = (new Date()).getTime();
};
// This is the public method accessing the private attribute
let get_creation_time = function () {
return this[private_id].creation_time;
};
// Anything listed below are public methods
My_Class = Class.extend({
init: init,
get_creation_time: get_creation_time
});
})();