Javascript подсчитывает количество повторений элемента - PullRequest
0 голосов
/ 17 декабря 2010

У меня есть следующий фрагмент кода в моем патче JavaScript в кварцевом композере, и мне нужно пройтись по всей структуре, чтобы найти, сколько каждого элемента имеется, и вывести массив всех элементов. Я могу пройтись по StructureIn, чтобы сравнить его с Заголовком 0 и создать массив с заголовком 0 в качестве ключа и количеством повторений в качестве значения. Что мне нужно сделать, так это выяснить, как перебрать все элементы Title (их 49), чтобы получить нужный массив. Будем очень благодарны любой помощи.

var result = new Object();
var MySTR = new Object(); 

result.structureOut = new Object();
k = 1;

    for(i = 0; i < structureIn[1].length; i++) {
        if(structureIn[1][i][1] == Title[0])
            MySTR[Title[0]] = k++;
    }

result.structureOut = MySTR;
return result;

1 Ответ

0 голосов
/ 17 декабря 2010

Похоже, вы хотите сделать что-то вроде этого:

var result = new Object();
var MySTR= new Object(); 

result.structureOut = new Object();
for(j = 0; j <49; j++)
{
   MySTR[Title[j]] = 0;
}

for(i = 0; i <structureIn[1].length; i++)
{
    for(j = 0; j <49; j++)
    {
       if(structureIn[1][i][1] == Title[j])
       MySTR[Title[j]]++;
    }
}

result.structureOut=MySTR;
return result;

Вы в основном просматриваете все элементы в структуре и сравниваете их со всеми элементами в Title. Первый цикл инициализирует результаты в 0, поэтому вам не нужно отслеживать переменную k, которая у вас была.

...