Tell us what’s happening:
I’m failing test 8-10 but the getFlags() function returns a string of “i” or “g” or “ig” or “gi”. When the checkboxes is checked independently and together correctly.
Your code so far
<!-- file: index.html -->
/* file: script.js */
// HTML objects
let regexPattern = document.getElementById("pattern");
let stringToTest = document.getElementById("test-string");
let testButton = document.getElementById("test-btn");
let testResult = document.getElementById("result");
let caseInsensitiveFlag = document.getElementById("i");
let globalFlag = document.getElementById("g");
//---Varables---
let sFlag = ["iFalse","gFalse"];
//---Functions---
function getFlags(input) {
// Grabs the checkbox state pair
if (input === "iTrue") {
sFlag = sFlag.map(e => e.replace("iFalse", "iTrue"));
}
if (input === "iFalse") {
sFlag = sFlag.map(e => e.replace("iTrue", "iFalse"));
}
if (input === "gTrue") {
sFlag = sFlag.map(e => e.replace("gFalse", "gTrue"));
}
if (input === "gFalse") {
sFlag = sFlag.map(e => e.replace("gTrue", "gFalse"));
}
//---Debug---
console.log("sFlag1: " + sFlag);
//Returns flags
let returnFlag = "";
if (sFlag.includes("iFalse") && sFlag.includes("gFalse")) {
returnFlag = "";
}
if (sFlag.includes("iTrue") && sFlag.includes("gFalse")) {
returnFlag = "i";
}
if (sFlag.includes("iFalse") && sFlag.includes("gTrue")) {
returnFlag = "g";
}
if (sFlag.includes("iTrue") && sFlag.includes("gTrue")) {
returnFlag = "ig";
}
//---Debug---
//console.log("returnFlag: " + (returnFlag == "i"));
return returnFlag;
}
//---Event Listeners---
//Test Regex Button
testButton.addEventListener("click", () => {
})
//Checkboxes
let flagArr = [];
caseInsensitiveFlag.addEventListener("click", (event) => {
if (event.target.checked) {
getFlags("iTrue");
}
if (!event.target.checked) {
getFlags("iFalse");
}
//console.log("iETC: " + event.target.checked);
});
globalFlag.addEventListener("change", (event) => {
if (event.target.checked) {
getFlags("gTrue");
} else {
getFlags("gFalse");
}
//console.log("gETC: " + event.target.checked);
});
/* file: styles.css */
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36
Challenge Information:
Build a RegEx Sandbox - Build a RegEx Sandbox
https://www.freecodecamp.org/learn/full-stack-developer/lab-regex-sandbox/lab-regex-sandbox`Preformatted text`