• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Pętla for i dwa wyniki.

Cloud VPS
0 głosów
275 wizyt
pytanie zadane 22 sierpnia 2019 w JavaScript przez Dru Nowicjusz (180 p.)
const bobsFollowers = ['John', 'Jack', 'Michael', 'Richard'];
const tinasFollowers =['John', 'Barbra', 'Michael']
const mutualFollowers = [];
for (let i = 0; i < bobsFollowers.length; i++) {
  for (let j = 0; j < tinasFollowers.length; j++) {
    if (bobsFollowers[i] === tinasFollowers[j]) {
    	mutualFollowers.push(tinasFollowers[i]);
      console.log(mutualFollowers);
    }
  }
}

Dzień dobry wszystkim ;)
Czy ktoś wie dlaczego podany kod, który ma przypisać do pustej tablicy mutualFollowers te same imiona z dwóch tablic bobsFollowers i tinasFollowers, zwraca mi dwa wyniki? 
O to one:

[ 'John' ]
[ 'John', 'Michael' ]

1 odpowiedź

+1 głos
odpowiedź 22 sierpnia 2019 przez adrian17 Mentor (354,720 p.)
Bo wypisujesz tablicę w środku pętli?
komentarz 23 sierpnia 2019 przez Dru Nowicjusz (180 p.)

To w jaki sposób mam dodać do pustej tablicy mutualFollowers aby wynik był tylko jeden?

 

komentarz 23 sierpnia 2019 przez adrian17 Mentor (354,720 p.)
Chyba do końca nie rozumiem problemu.

Chodzi o to że są dwie linie wyników, czy że drugi ma dwie osoby?
komentarz 23 sierpnia 2019 przez Dru Nowicjusz (180 p.)
To, że są dwie. Drugi, według tego co chcę zrobić, jest poprawny. Chcę aby kod ten odnalazł z dwóch pierwszych tablicach te same imiona, a potem je przypisał do trzeciej pustej tablicy. Po prostu zastanawiam się skąd bierze się pierwszy wynik i to tylko z jednym imieniem.
komentarz 23 sierpnia 2019 przez Dru Nowicjusz (180 p.)
const bobsFollowers = ['John', 'Jack', 'Michael', 'Richard'];
const tinasFollowers =['John', 'Barbra', 'Michael']
for (let i = 0; i < bobsFollowers.length; i++) {
  for (let j = 0; j < tinasFollowers.length; j++) {
    if (bobsFollowers[i] === tinasFollowers[j]) {
      const mutualFollowers = [];
    	mutualFollowers.push(tinasFollowers[j]);
      console.log(mutualFollowers);
    }
  }
}

Po przeniesieniu tablicy mutualFollowers do if'a dalej mam dwie linie kodów, jednak w pierwszej mam imię John, a w drugiej Michael.

[ 'John' ]
[ 'Michael' ]
komentarz 23 sierpnia 2019 przez adrian17 Mentor (354,720 p.)

To, że są dwie

Ale to po prostu dlatego, że wypisujesz tablicę w środku pętli. Wyciągnij wypisywanie poza pętlę i będzie tylko ten końcowy wynik.

komentarz 23 sierpnia 2019 przez Dru Nowicjusz (180 p.)
Może to zabrzmi głupio, ale jak tak robiłem wcześniej to wyskakiwał mi błąd... Potem czuję się jak debil :D Dzięki ;)

Podobne pytania

0 głosów
2 odpowiedzi 4,818 wizyt
pytanie zadane 28 stycznia 2017 w JavaScript przez MTB Użytkownik (690 p.)
0 głosów
1 odpowiedź 971 wizyt
pytanie zadane 18 kwietnia 2018 w PHP przez KKashi Nowicjusz (120 p.)
0 głosów
2 odpowiedzi 904 wizyt
pytanie zadane 21 sierpnia 2017 w Algorytmy przez Konfeusz Bywalec (2,810 p.)

93,487 zapytań

142,423 odpowiedzi

322,773 komentarzy

62,908 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...