Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.10.2011, 20:51
Новичок на форуме
Отправить личное сообщение для opeen_door Посмотреть профиль Найти все сообщения от opeen_door
 
Регистрация: 31.10.2011
Сообщений: 2

Помогите исправить функцию поиска слова
Решил потренироваться в написании функций, но в чем-то видно умом слаб. Помогите найти ошибку или же её исправить. Заранее спасибо!
А сам код вот:
function findWord(source, word, type){
	var wordLength = word.value.length;
	var massiveLetter = new Array(worldLength);
	for(var a=0; a<=wordLength; a++){
		massiveLetter[a] = word[a];
	}
	if(type="value"){
		for(var b=0; b<=source.value; b++){
			if(source.value[b]=massiveLetter[a]){
				if(source.value[b+1]=massiveLetter[a+1]){
					break;
					return 23;
				}
			}
		}
	}
	else{
		return "Debugger";
	}
}
Ответить с цитированием
  #2 (permalink)  
Старый 31.10.2011, 21:11
Аватар для 9xakep
сегодня в 12:34|Комментир
Отправить личное сообщение для 9xakep Посмотреть профиль Найти все сообщения от 9xakep
 
Регистрация: 12.04.2011
Сообщений: 1,180

А в готовом варианте:
findWord('текст откуда надо найти слово' , 'искомое слово', 'а тут что?')
Ответить с цитированием
  #3 (permalink)  
Старый 31.10.2011, 21:18
Новичок на форуме
Отправить личное сообщение для opeen_door Посмотреть профиль Найти все сообщения от opeen_door
 
Регистрация: 31.10.2011
Сообщений: 2

точно забыл. это тип сейчас не объязательно просто есть текст в div`е его достают div.text а есть в input его достают input.value вот и типо тип. надеюсь понятно объяснил
Ответить с цитированием
  #4 (permalink)  
Старый 31.10.2011, 21:44
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

1) Массив символов из строки получается замечательным методом split. Но в вашем случае и это не нужно - у строк есть замечательный метод charAt(n), который возвращает символ за номером n.

2) Не обязательно передавать тип. Лучше всего - это передавать сразу value, т.е. сразу строку, которую вы проверяете. То же касается и source - передавайте сразу строку. Если же всё-таки хочется передавать dom-объект, то можно внутри самой ф-ции выполнять проверку типа такой:
if (obj.tagName=="input"){
 //делаем всё то, что нужно в случае работы с инпутом.
} else {
 //иначе делаем что-то другое))
};


3) Это вы, пардоньте, с чем b сравнивать будете?
for(var b=0; b<=source.value; b++)

4) Уберите break.

P. S. Кстати, учтите, если вы обратитесь к элементу source[b+1], а его не будет, то это вызовет ошибку.
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)

Последний раз редактировалось trikadin, 31.10.2011 в 21:49.
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите исправить ошибки в лабораторных работах по информатике muzhik65 Общие вопросы Javascript 18 06.05.2011 13:39
Помогите вынести обработчик события в функцию. prowoke Events/DOM/Window 3 25.03.2011 00:55
Помогите исправить ошибки. AJAX на MooTools 1.11 dron79 Библиотеки/Тулкиты/Фреймворки 0 26.08.2010 10:40
Помогите!!! Из нового окна вызвать функцию ignavr Элементы интерфейса 5 13.12.2009 13:04
Помогите исправить расположение окон abramovichanya Работа 2 10.07.2009 02:00