<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min.js" integrity="sha512-WFN04846sdKMIP5LKNphMaWzU7YpMyCU245etK3g/2ARYbPK9Ub18eG+ljU96qKRCWh+quCY7yefSmlkQw1ANQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/uuid/8.3.2/uuid.min.js" referrerpolicy="no-referrer"></script>
const { v4: uuidv4 } = uuid;
// 1. Create an array of id's with 10,000 items
const ids = Array.from({ length: 10000 }, () => uuidv4());
const setTest = new Set();
const mapTest = new Map();
// 2. Create an object which has all of the same id's
const obj = _.reduce(ids, (acc, id) => {
acc[id] = true;
setTest.add(id);
mapTest.set(id, true)
return acc;
}, {});
// 3. Get ten random id's from the list in stage 1
const randomIds = _.sampleSize(ids, 10);
for (const id of randomIds) {
const found = setTest.has(id)
}
for (const id of randomIds) {
const found = mapTest.get(id)
}
for (const id of randomIds) {
const found = ids.find(x => x === id)
}
for (const id of randomIds) {
const found = obj[id]
}