// Array to track used objects if "Unique" is checked
var usedObjects = [];
// Function to get a random object
function getRandomObject() {
if (document.getElementById("uniqueCheckbox").checked) {
// Unique mode - Remove used objects from the list
if (usedObjects.length === objData.length) {
alert("All objects have been used! Resetting the list.");
usedObjects = [];
}
var availableObjects = objData.filter(function(item) {
return !usedObjects.includes(item);
});
var randomIndex = Math.floor(Math.random() * availableObjects.length);
var randomObject = availableObjects[randomIndex];
usedObjects.push(randomObject);
} else {
// Normal mode - No uniqueness enforced
var randomIndex = Math.floor(Math.random() * objData.length);
var randomObject = objData[randomIndex];
}
return randomObject;
}
// Function to display the generated random objects
function generateRandomObjects() {
// Get the number of objects to generate from the input field
var objectCount = parseInt(document.getElementById("objectCount").value);
// Validate the number (should not exceed 1500)
if (isNaN(objectCount) || objectCount < 1 || objectCount > 1500) {
alert("Please enter a valid number between 1 and 1500.");
return;
}
// Generate the specified number of random objects
var result = [];
for (var i = 0; i < objectCount; i++) {
result.push(getRandomObject());
}
// Display the generated random objects
document.getElementById("output").innerHTML = 'Random Object(s):'+ '<span>'+ result + '</span>';
}
// Function to reset the form and clear the output
function resetForm() {
// Clear the output
document.getElementById("output").innerText = "Your random object(s) will appear here...";
// Reset the input field to default value of 1
document.getElementById("objectCount").value = 1;
// Uncheck the unique checkbox
document.getElementById("uniqueCheckbox").checked = false;
// Clear the used objects array
usedObjects = [];
}
var objData = ['Lighthouse', 'Punching bag', 'Chaps', 'Shower cap', 'Cauldron', 'Eggnog', 'Video camera', 'Faucet', 'Beads', 'Necklace', 'Sticker', 'Bow tie', 'Kale', 'Mantle', 'Loaf of bread', 'Blackberry']
Random Object Generator - This is live example