(text[i] === "E") confusion


#1

So the code below it shows (text[i] === "E") but shouldn't (text[i] === "E") be displaying a full word? Also if it is === means exact same so how is it even possible for it to match it as exact same?

/*jshint multistr:true */

text = "Blah blah blah blah blah blah Eric \
blah blah blah Eric blah blah Eric blah blah \
blah blah blah blah blah Eric";

var myName = "Eric";
var hits = [];

// Look for "E" in the text
for(var i = 0; i < text.length; i++) {
	if (text[i] === "E") {
		// If we find it, add characters up to
		// the length of my name to the array
		for(var j = i; j < (myName.length + i); j++) {
			hits.push(text[j]);
		}
	}
}

if (hits.length === 0) {
	console.log("Your name wasn't found!");
} else {
	console.log(hits);
}

#2

Read text[i] === "E" as "position i in text equals "E""
You're not looking for a complete word, just asking if one position is an E.

If the character you found was an E then push this E and myName.length-1 characters behind that to hits. Resulting in 0 or more strings in hits starting with an E and 4 chars long which may or may not contain your name.