Предполагается найти Эрика в тексте, я получаю это, но может ли кто-нибудь объяснить мне, что делают петли «для»? Благодарю.Можете ли вы объяснить мне этот код?
/*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 = [];
for(var i = 0; i < text.length; i++) {
if (text[i] === "E") {
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);
}
Это не делает найти Эрика, он находит любую подстроку, которая начинается с E и имеет одинаковую длину. Так, например, Echo будет работать. Для меня код бессмыслен и должен быть удален без дальнейших размышлений =/ –
Код замены для поиска Eric: 'if (text.indexOf (myName)> -1) console.log (« Имя найдено! »);' –
Это будет повторяться 16 раз, потому что вы повторяете его hits.length и печатаете полное слово, которое хранится в виде хитов, если вы хотите распечатать только четыре раза, поэтому замените свой код на этот var getLength = hits.length; if (getLength === 0) { console.log («Ваше имя не было найдено!»); } else { \t для (var k = 0; k