function UniqueIDGeneretor() { } UniqueIDGeneretor.lastID = 0; UniqueIDGeneretor.createID = function (obj) { if (UniqueIDGeneretor.isPrimitive(obj)) { return obj; } if (obj.uniqueID != null) { return obj.uniqueID; } obj.uniqueID = UniqueIDGeneretor.getString(); UniqueIDGeneretor.lastID++; return obj.uniqueID; } UniqueIDGeneretor.getString = function (id) { if (id == null) id = UniqueIDGeneretor.lastID; return "Object#" + id + ""; } UniqueIDGeneretor.isPrimitive = function (arg) { var type = typeof arg; return arg == null || (type != "object" && type != "function"); } module.exports = UniqueIDGeneretor;