Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pretrazivanje nizova u JS za istim vrednostima

[es] :: Javascript i AJAX :: Pretrazivanje nizova u JS za istim vrednostima

[ Pregleda: 1978 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

dj13
Beograd

Član broj: 64598
Poruke: 15
*.static.beocity.net.



Profil

icon Pretrazivanje nizova u JS za istim vrednostima03.04.2007. u 13:35 - pre 207 meseci
Kako pretraziti neki niz u JS i pronaci da li ima duplikate vrednosti? I koliko njih istih?
Primer: (2,4,6,8,2,2,13,45,8) - u ovom slucaju ima dve vrednosti koje se ponavljaju 2 i 8.
I jos ali to samo kao bonus kad bi moglo da se i izdvoji koje se vrednosti koliko puta ponavljaju. Gore primer 2 tri puta, 8 dva puta.
Hvala.


[Ovu poruku je menjao dj13 dana 03.04.2007. u 16:03 GMT+1]
 
Odgovor na temu

Aleksandar Ružičić
Software Architect, Appricot d.o.o.
Beograd

Član broj: 26939
Poruke: 2881

Jabber: krckoorascic@gmail.com
Sajt: krcko.net


+44 Profil

icon Re: Pretrazivanje nizova u JS za istim vrednostima04.04.2007. u 21:58 - pre 207 meseci
mozda ovako nesto:
Code:

function dups(a)
{
   var duplicate = [];

   for (var i = 0; i < a.length; i++)
   {
       var d = { item : a[i], count : 0};

        for (var k = i + 1; k < a.length; k++)
        {
            if (a[i] == a[k])
            {
                d.count++;
            }
        }
        
        if (d.count > 0)
        {
            var add = true;

            d.count++;

            for (var l = 0; l < duplicate.length; l++)
            {
                if (duplicate[l].item == d.item)
                {
                    add = false;
                    break;
                }
            }

            if (add)
            {
                duplicate.push(d);
            }
        }
   }

   return duplicate;
}

mozda nije najbolje, al je najjednostavnije resenje...

a ovako koristis:
Code:

var foo = new Array(2,4,6,8,2,2,13,45,8);

var d = dups(foo);

for (var i = 0; i < d.length; i++)
{
    document.write(d[i].item);
    document.write(' se ponavlja ');
    document.write(d[i].count);
    document.write(' puta<br>');
}

to ce da ti izbaci:
Code:

2 se ponavlja 3 puta
8 se ponavlja 2 puta

 
Odgovor na temu

[es] :: Javascript i AJAX :: Pretrazivanje nizova u JS za istim vrednostima

[ Pregleda: 1978 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.