Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.12.2012, 14:23
Профессор
Отправить личное сообщение для dima*** Посмотреть профиль Найти все сообщения от dima***
 
Регистрация: 13.12.2012
Сообщений: 283

Сравнение в массиве массивов
Сравнение в массиве массивов по 2 показателям.C помощью for вывести на экран.

Что-то не получается...

<script>

function uh(x){
	if(x[1]>x[2])
	{return 1}
	else
	{return 0}
}

a=[['Мама',4,2],['Папа',2,3]];
for(i=0;i<a.length;i++){	
document.write(a[i]+'<br>');
}

c=uh(a[0]);        //Без цикла получается
document.write(c+'<br>');
c1=uh(a[1]);
document.write(c1+'<br>');


c=new Array;     //Не получается
c=uh(a[i]);
for(i=0;i<c.length;i++){
document.write(c[i]+'<br>');
}

</script>

Последний раз редактировалось dima***, 20.12.2012 в 15:05.
Ответить с цитированием
  #2 (permalink)  
Старый 20.12.2012, 14:44
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

dima***, что не совсем понял, тоесть сравнить значения первого массива в массиве и значение второго массива в массиве?

var a = [[1,2,3],[0,2,4]]
for(i=0;i<a[0].length;i++)
{
   if(a[0][i] == a[1][i])
   {
      alert('значение '+a[0][i]+' первого массива совпало со значением '+a[1][i]+' второго массива');
   }
}

Последний раз редактировалось ruslan_mart, 20.12.2012 в 17:22.
Ответить с цитированием
  #3 (permalink)  
Старый 20.12.2012, 14:58
Профессор
Отправить личное сообщение для dima*** Посмотреть профиль Найти все сообщения от dima***
 
Регистрация: 13.12.2012
Сообщений: 283

Ruslan_xDD,нет.Нужно поочерёдно сравнить
a[0]- 1 и 2 элементы,
a[1]- 1 и 2 элементы.
Полученный результат вывести на экран с помощью цикла for/
Ответить с цитированием
  #4 (permalink)  
Старый 20.12.2012, 17:19
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

var a = [[1,2,3],[0,2,4]]
for(i=0;i<a[0].length;i++)
{
   for(j=0;j<a[1].length;j++)
   {
      if(a[0][i] == a[1][j])
      {
          alert(true);
      }
   }
}

Вот так что ли?
Ответить с цитированием
  #5 (permalink)  
Старый 20.12.2012, 17:51
Профессор
Отправить личное сообщение для dima*** Посмотреть профиль Найти все сообщения от dima***
 
Регистрация: 13.12.2012
Сообщений: 283

Ruslan_xDD-нет.
Там просто нужно сравнить 1 и 2 элементы,сначала в одном массиве,потом в другом.Затем с помощью for вывести.
Элементы из разных массивов сравнивать не нужно.

Ну никак неполучается.Целый день сижу...
Ответить с цитированием
  #6 (permalink)  
Старый 20.12.2012, 19:23
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от dima***
Там просто нужно сравнить 1 и 2 элементы,сначала в одном массиве,потом в другом.Затем с помощью for вывести.
Элементы из разных массивов сравнивать не нужно.
Потому что объясняете XDD

Распишите построчно какие элементы с какими сравниваем
var a = [[1,2,3],[0,2,4]]
1. ? сравниваем 2 и 3 первого массива
2. ? сравниваем 2 и 4 второго массива
Ответить с цитированием
  #7 (permalink)  
Старый 20.12.2012, 20:08
Профессор
Отправить личное сообщение для dima*** Посмотреть профиль Найти все сообщения от dima***
 
Регистрация: 13.12.2012
Сообщений: 283

1.в нулевом массиве сравниваем 1 и 2 элемент между собой
2.в первом массиве также сравниваем 1 и 2 элемент массива.
3.Выводим на экран через for.

В скрипте(см. 1 топик) результат есть.Но нужно через for

Последний раз редактировалось dima***, 20.12.2012 в 20:24.
Ответить с цитированием
  #8 (permalink)  
Старый 20.12.2012, 20:25
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

dima***,
Индексация в массивах = с 0 или 1 ?
Ответить с цитированием
  #9 (permalink)  
Старый 20.12.2012, 20:27
Профессор
Отправить личное сообщение для dima*** Посмотреть профиль Найти все сообщения от dima***
 
Регистрация: 13.12.2012
Сообщений: 283

с 0.
Ответить с цитированием
  #10 (permalink)  
Старый 20.12.2012, 20:33
Профессор
Отправить личное сообщение для dima*** Посмотреть профиль Найти все сообщения от dima***
 
Регистрация: 13.12.2012
Сообщений: 283

Так наверное будет понятнее.
Смысл этой задачи добавить ещё один столбец к существующей таблице.
Вот весь скрипт:
<script  type="text/javascript">
function esli(x){
	if(x[2]>x[3])
	{return 1}
	else
	{return 0}
}


 
var a = "Мама мыла.Старший сын 4 2.Мама пришла 0 0.Щенок гавкал 6 8.";
    reg = /([А-Яа-я]+)\s([А-Яа-я]+)(\s(\d+)\s(\d+))?\./g,
    b = a.match(reg),
    c = new Array;
for (i = 0; i < b.length; i++) {
    c[i] = b[i].replace(reg, '$1,-,$2,$4,$5');
    c[i] = c[i].split(/,/);
}
for (i = 0; i < c.length; i++) {
    document.write(c[i] + '<br>');
}

/*m=new Array;
m=esli(c[i]);
for (i = 0; i<m.length; j++) {
    document.write(m[i]+'<br>');
}*/


var i, j;
document.write("<table id=T1 border=1>");
for (i = 0; i < c.length; i++) {
    document.write("<tr>");
    for (j = 0; j < c[i].length; j++) {
        document.write("<td>" + c[i][j] + "</td>")
    }
    document.write("</tr>")
}
document.write("</table>"+'<br>');

          </script>

Последний раз редактировалось dima***, 20.12.2012 в 20:42.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
сравнение массивов bot87 Общие вопросы Javascript 4 22.09.2012 01:31
Сравнение двух строк drac0Sha Общие вопросы Javascript 17 20.08.2012 19:45
Как быстро проверить есть ли в массиве нужная строка? Почемучкин Общие вопросы Javascript 15 17.08.2012 20:19
Объекты в массиве. delias Общие вопросы Javascript 2 21.04.2010 22:28
видимость предка в массиве scuter Общие вопросы Javascript 4 13.08.2008 20:16