Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 04.06.2012, 01:29
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Hekumok,
<script type="text/javascript">
 var Arr_1 = [2, 'crack', 'find', 2];

 function Find_El_Array ( arr, val ) {
   var array_OUT = [];
   for(var i in arr) {if (val == arr[i]) array_OUT.push(i);}
   if(array_OUT.length) return array_OUT;
   return -1; 
 }

 alert( Find_El_Array (Arr_1, 2) )
 alert( Find_El_Array (Arr_1, 1) )

</script>
Ответить с цитированием
  #12 (permalink)  
Старый 04.06.2012, 01:34
Аватар для Hekumok
Отправить личное сообщение для Hekumok Посмотреть профиль Найти все сообщения от Hekumok
 
Регистрация: 04.06.2012
Сообщений: 513

Deff, попробовал ваш скрипт, вставив -1 вместо false, вывело почему-то три нуля:

var massive = [2, 'crack', 'find', 2] ;
var mass = [5, 'al', 1] ;
function find(arr, val) {
for (var i in arr) {
if (value = arr[i]) return i ;}
return -1 ; } ;
alert(find(massive, 2)) ;
alert(find(mass, 'al')) ;
alert(find(mass, 2)) ;
alert(find(massive, 'al')) ;
Ответить с цитированием
  #13 (permalink)  
Старый 04.06.2012, 01:37
Аватар для Hekumok
Отправить личное сообщение для Hekumok Посмотреть профиль Найти все сообщения от Hekumok
 
Регистрация: 04.06.2012
Сообщений: 513

Deff, нет, на выходе массив не нужен...нужно просто, чтобы через alert вывело номер значение, если есть совпадение, если 2 совпадения, то должно быть 2 алерта с номерами, а если нет совпадений, то должно вывести -1
Ответить с цитированием
  #14 (permalink)  
Старый 04.06.2012, 01:37
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Hekumok,

Три 0 занчит три элемента первых в списке - Первый элемент 0 -номер

массивы начинаются с 0
Ответить с цитированием
  #15 (permalink)  
Старый 04.06.2012, 01:39
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от Hekumok
Deff, нет, на выходе массив не нужен...нужно просто, чтобы через alert вывело номер значение, если есть совпадение, если 2
Если есть совпадения - То выводится массив Номеров совпадений

к примеру
1, 2, 3 (Совпали
----------------------
можно сделать строку цифр через запятую, но тогда вам придется цифры вычленять из строки

в так перебираете массив ответных совпадений в цикле

Последний раз редактировалось Deff, 04.06.2012 в 01:41.
Ответить с цитированием
  #16 (permalink)  
Старый 04.06.2012, 01:41
Аватар для Hekumok
Отправить личное сообщение для Hekumok Посмотреть профиль Найти все сообщения от Hekumok
 
Регистрация: 04.06.2012
Сообщений: 513

Deff, да я знаю, что с нуля элементы начинаются, но с такими массивами
var massive = [2, 'crack', 'find', 2] ;
var mass = [5, 'al', 1] ;
должно было вывести
alert(find(massive, 2)) ; // 0, 3
alert(find(mass, 'al')) ; // 1
alert(find(mass, 2)) ; // -1
alert(find(massive, 'al')) ; // -1
Ответить с цитированием
  #17 (permalink)  
Старый 04.06.2012, 01:44
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Hekumok,
Первый код был расчитан на одно совпадение(У Всех) - подставляйте во второй

Короткие имена типа Find - лучше не делать - подобные операторы часто есть в библиотеках
Ответить с цитированием
  #18 (permalink)  
Старый 04.06.2012, 01:44
Аватар для Hekumok
Отправить личное сообщение для Hekumok Посмотреть профиль Найти все сообщения от Hekumok
 
Регистрация: 04.06.2012
Сообщений: 513

Deff, лучше бы конечно, чтобы через "алерт" выводило каждое совпадение, но можно и как вы предложили с новым массивом

Последний раз редактировалось Hekumok, 04.06.2012 в 01:47.
Ответить с цитированием
  #19 (permalink)  
Старый 04.06.2012, 01:45
Аватар для Hekumok
Отправить личное сообщение для Hekumok Посмотреть профиль Найти все сообщения от Hekumok
 
Регистрация: 04.06.2012
Сообщений: 513

Сообщение от Deff Посмотреть сообщение
Hekumok,
Первый код был расчитан на одно совпадение(У Всех) - подставляйте во второй
Не понял чё-та...
Ответить с цитированием
  #20 (permalink)  
Старый 04.06.2012, 01:46
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Hekumok,
Пост 12
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Java-скрипт для поиска. 2oo Общие вопросы Javascript 25 11.12.2010 13:10
Переодическое обновление значений для графика, функция для обновления значений yupa87 Общие вопросы Javascript 0 09.07.2009 14:48
Регулярное выражение для поиска смайлов. NightmareZ Общие вопросы Javascript 13 23.06.2009 13:12
Функция onclick для созданных потомков Groonel Общие вопросы Javascript 6 24.04.2009 18:35