File size: 678 Bytes
bc20498 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
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;
|