Форум программистов, компьютерный форум, киберфорум
Наши страницы
JavaScript
Войти
Регистрация
Восстановить пароль
 
hoob777
5 / 5 / 5
Регистрация: 03.01.2015
Сообщений: 116
1

Поиск имени в тексте, задание с CodeAcademy

16.04.2015, 11:42. Просмотров 400. Ответов 6
Метки нет (Все метки)

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var text = "Hello yoyoyo text text text text text text text text text text text text text text Dmitro text text text text text text text text yoyoyoy";
var myName = "Dmitro";
var hits = [];
for (i = 0; i < text.length; i++) {
    if (text[i] === myName[0]) {
        for (j = i; j < (myName.length + i); j++) {
            if (text[j] === myName[j-1]) {
                hits.push(text[j]);
            }
        }
    }
}
if (hits.length === 0) {
    document.write("Your name wasn't found!");
} else {
    document.write(hits);
}
indexOf и по regExp не нужно советовать Обьясните пожалуйста 2 цикла, с описанием что делается, сложно переварить всё, и почему в итоге в браузере выводится что имя not found.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.04.2015, 11:42
Ответы с готовыми решениями:

Поиск имени в тексте
Добрый вечер друзья. Совершенно недавно взялся за изучение javascript, очень...

Javascript: поиск объекта по части имени
Речь о счетчиках yaCounterXXXXXX, которые уже есть на странице. Как мне все их...

Поиск имени в массиве, введённом ранее
голос против избранное есть задани и к нему нужно написать скрипт,вот...

Javascript поиск и замена в тексте
Добрый вечер! Помогите дорогие скриптеры, я в JS такоооой дуб! Понадобился...

Поиск номера телефона в тексте
Добрый день есть текст в блоке и в нем могут быть номера телефонов, мне нужно...

6
Shakalaka
Эксперт HTML/CSS
644 / 548 / 322
Регистрация: 27.01.2015
Сообщений: 1,374
16.04.2015, 13:07 2
Цитата Сообщение от hoob777 Посмотреть сообщение
и почему в итоге в браузере выводится что имя not found.
Может потому, что в скрипте бред написан?)
Цитата Сообщение от hoob777 Посмотреть сообщение
if (text[i] === myName[0]) {
* * * * for (j = i; j < (myName.length + i); j++) {
а если строка будет такой "text text textD"? Выйдет, что последний символ строки совпадает с именем, а дальше цикл j < (myName.length + i) и text[j] но j уже больше длинны строки text. И это только начало, дальше бред похлеще... Короче, надо переделывать алгоритм)
0
BANO
Ренегат
Эксперт HTML/CSS
1716 / 1059 / 385
Регистрация: 06.08.2014
Сообщений: 5,203
Записей в блоге: 1
16.04.2015, 15:32 3
а почему вы не хотите использовать всеми принятые регулярные выражения?
0
kalabuni
Нарушитель
3236 / 2561 / 614
Регистрация: 18.04.2012
Сообщений: 7,702
17.04.2015, 00:13 4
text.length возвращает количество символов в строке text (а никак не количество слов, как вам этого хочется)

text [i] возвращает i-тый символ строки text (а никак не i-тое слово, как вам этого хочется)

поэтому в строке кода
if (text[i] === myName[0]) вы поочередно сравниваете символы 'H', 'e', 'l', 'l' 'o',.. с подстрокой 'Dmitro'

чтобы свойство length возвращало количество слов, необходимо сначала из строки text получить массив arr, разбив её на элементы по пробелам var arr = text.split (' ');

вот тогда arr [i] вернёт вам i-тое слово
0
Fedor Vlasenko
Программист Php, Js
Эксперт PHP
817 / 550 / 215
Регистрация: 01.02.2015
Сообщений: 1,690
17.04.2015, 01:12 5
Javascript
1
2
3
4
5
6
function isStringName(str, name){
    return text.split(name).length > 1;
}
 
var text = "Hello yoyoyo text text text Dmitro t text text text text text text yoyoyoy";
alert(isStringName(text, 'Dmitro'));
0
Kerry_Jr
Эксперт PHP
2210 / 2006 / 940
Регистрация: 14.05.2014
Сообщений: 5,869
Записей в блоге: 1
Завершенные тесты: 5
17.04.2015, 01:25 6
Цитата Сообщение от kalabuni Посмотреть сообщение
поэтому в строке кода
if (text[i] === myName[0]) вы поочередно сравниваете символы 'H', 'e', 'l', 'l' 'o',.. с подстрокой 'Dmitro'
Вы готовы отстаивать свою точку зрения по этому поводу?
0
kalabuni
Нарушитель
3236 / 2561 / 614
Регистрация: 18.04.2012
Сообщений: 7,702
17.04.2015, 05:37 7
Цитата Сообщение от Kerry_Jr Посмотреть сообщение
Вы готовы отстаивать свою точку зрения по этому поводу?
нэт, нэ готов, дворянский кодэкс нэ позволяэт дуэлировать с быдлом
0
17.04.2015, 05:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.04.2015, 05:37

Javascript (codeacademy - "'WHILE' LOOPS IN JAVASCRIPT(Dragon Slayer!)")
Пожалуйста, помогите прочитать этот код!!! var slaying = true; // A bit of...

Поиск файлов по части имени \ имени
var SR: TSearchRec; Folder: String; begin Folder := 'D:\'; ...

Не работает код с codeacademy
Добрый вечер! Занялся прохождением курсов на https://www.codecademy.com и для...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru