Check whether a string contains a smaller string.

text-search `includes` answers a true/false question. `indexOf` returns the first position or `-1` when the text is missing.

Text Search

term
text_search.js
Replay: real traced execution (multi-file project)
const term = "cat";
const line = "cat dog cat";
const found = line.includes(term);
const position = line.indexOf(term);

console.log("term=" + term);
console.log("found=" + found);
console.log("position=" + position);
const term = "dog";
const line = "cat dog cat";
const found = line.includes(term);
const position = line.indexOf(term);

console.log("term=" + term);
console.log("found=" + found);
console.log("position=" + position);
const term = "fox";
const line = "cat dog cat";
const found = line.includes(term);
const position = line.indexOf(term);

console.log("term=" + term);
console.log("found=" + found);
console.log("position=" + position);
  1. term ← cat, line ← cat dog cat, found ← true, position ← 0

    1const term→ cat = "cat"; //@term="dog", "fox"2const line→ cat dog cat = "cat dog cat";3const found→ true = linecat dog cat.includes(termcat);4const position→ 0 = linecat dog cat.indexOf(termcat);56console.log("term=" + termcat);7console.log("found=" + foundtrue);8console.log("position=" + position0);
    outputterm=cat
    found=true
    position=0
  1. term ← dog, line ← cat dog cat, found ← true, position ← 4

    1const term→ dog = "dog";2const line→ cat dog cat = "cat dog cat";3const found→ true = linecat dog cat.includes(termdog);4const position→ 4 = linecat dog cat.indexOf(termdog);56console.log("term=" + termdog);7console.log("found=" + foundtrue);8console.log("position=" + position4);
    outputterm=dog
    found=true
    position=4
  1. term ← fox, line ← cat dog cat, found ← false, position ← -1

    1const term→ fox = "fox";2const line→ cat dog cat = "cat dog cat";3const found→ false = linecat dog cat.includes(termfox);4const position→ -1 = linecat dog cat.indexOf(termfox);56console.log("term=" + termfox);7console.log("found=" + foundfalse);8console.log("position=" + position-1);
    outputterm=fox
    found=false
    position=-1