const arr = [4,1,2,1,2];
const singleNumberSet = (nums) => {
let mySet = new Set();
for (let i = 0; i < nums.length; i++) mySet.has(nums[i]) ? mySet.delete(nums[i]) : mySet.add(nums[i])
return Array.from(mySet)[0];
};
const singleNumberXOR = (nums) => {
let result = 0;
nums.forEach(it => result ^= it);
return result;
};
var singleNumberObj = (nums) => {
const occurencies = {};
nums.forEach(it => occurencies[it] ? occurencies[it] += 1 : (occurencies[it] = 1));
for (let it in occurencies) if (occurencies[it] === 1) return it;
return -1;
};