I am building a chrome extension using which i want know if given word is present in website or not. I have tried using document.documentElement.innerHTML but it is only matching with only some words present at the top of website and giving false result even word is present in that website.
You should take a look at Node.textContent.
To quote the MDN docs:
The textContent property of the Node interface represents the text content of the node and its descendants.
Which means you could get the textContent of the body node and check if it includes the word you want.
const b = document.body;
if (b.textContent.includes('foo bar')) {
//... it includes 'foo bar'
}
This probably isn't the fastest way to approach this although it is very readable and specifying a Node nested deeper inside of body should increase performance.