function MySet() {
this.items = {}
MySet.prototype.add = function (value) {
if(this.has(value)) return false;
this.items[value] = value;
return true
}
MySet.prototype.remove = function (value) {
if(!this.has(value)) return false;
delete this.items[value]
return true
}
MySet.prototype.has = function (value) {
return this.items.hasOwnProperty(value);
}
MySet.prototype.clear = function () {
this.items = {};
}
MySet.prototype.size = function () {
return Object.keys(this.items).length;
}
MySet.prototype.values = function () {
return Object.values(this.items);
}
}
let set = new MySet();