Use a regular expression flag for case-insensitive matching.

regex-test The `i` flag makes a pattern ignore letter case. This keeps the same pattern useful for different capitalization.

Case Insensitive Tests

name
regex_test.js
Replay: real traced execution (multi-file project)
const name = "JavaScript";
const hasScript = /script/i.test(name);
const label = hasScript ? "script-family" : "other";

console.log("name=" + name);
console.log("label=" + label);
const name = "javascript";
const hasScript = /script/i.test(name);
const label = hasScript ? "script-family" : "other";

console.log("name=" + name);
console.log("label=" + label);
const name = "TypeScript";
const hasScript = /script/i.test(name);
const label = hasScript ? "script-family" : "other";

console.log("name=" + name);
console.log("label=" + label);
  1. name ← JavaScript, hasScript ← true, label ← script-family

    1const name→ JavaScript = "JavaScript"; //@name="javascript", "TypeScript"2const hasScript→ true = /script/i.test(nameJavaScript);3const label→ script-family = hasScripttrue ? "script-family" : "other";45console.log("name=" + nameJavaScript);6console.log("label=" + labelscript-family);
    outputname=JavaScript
    label=script-family
  1. name ← javascript, hasScript ← true, label ← script-family

    1const name→ javascript = "javascript";2const hasScript→ true = /script/i.test(namejavascript);3const label→ script-family = hasScripttrue ? "script-family" : "other";45console.log("name=" + namejavascript);6console.log("label=" + labelscript-family);
    outputname=javascript
    label=script-family
  1. name ← TypeScript, hasScript ← true, label ← script-family

    1const name→ TypeScript = "TypeScript";2const hasScript→ true = /script/i.test(nameTypeScript);3const label→ script-family = hasScripttrue ? "script-family" : "other";45console.log("name=" + nameTypeScript);6console.log("label=" + labelscript-family);
    outputname=TypeScript
    label=script-family