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

Javascript funkcje objaśnienie zasady działania

Object Storage Arubacloud
0 głosów
400 wizyt
pytanie zadane 9 października 2017 w JavaScript przez PanKill Nowicjusz (230 p.)
edycja 9 października 2017 przez PanKill

Witam wszystkich

Proszę o wyjaśnienie działania części kodu, aby można było zorientować się o co chodzi, podaję treść zadania:
Napisz funkcję addArrays, która ma przyjmować dwa argumenty – dwie tablice
zawierające liczby całkowite. Funkcja ta ma zwracać również tablicę, która będzie
wynikiem dodawania każdego elementu o tym samym indeksie. Jeżeli, tablice nie są
równe, elementy nadmiarowe są przepisywane do nowej tablicy.

function addArrays(arr1, arr2) {
    let arrLen1 = arr1.length;
    let arrLen2 = arr2.length;

    let arrayLength = 0;
    let arrayMin = 0;

    if(arrLen1 > arrLen2) {
        arrayLength = arrLen1;
        arrayMin = arrLen2;

    }else if (arrLen1 < arrLen2) {
        arrayLength = arrLen2;
        arrayMin = arrLen1;
    }
    console.log('arrayLength ' + arrayLength);
    console.log('arrayMin ' + arrayMin);

        let sumArray = [];

       for(let i=0; i<arrayLength; i++) {
            if(i > arrayMin -1){
                if(arrLen1 > arrLen2) {
                    sumArray[i] = arr1[i];
                }else {
                    sumArray[i] = arr2[i];
                }
            }else {
                sumArray[i] = arr1[i] + arr2[i];
            }
        }
        console.log(arr1);
        console.log(arr2);
        console.log(' ');
        console.log(sumArray);
        return sumArray;
}
addArrays([4,0,1,3,4], [1,9,6,7,8,17]);

 

chodzi dokładnie o te część kodu, nie do końca rozumiem o co chodzi w tej części z pętlą i instrukcjami

for(let i=0; i<arrayLength; i++) {
            if(i > arrayMin -1){
                if(arrLen1 > arrLen2) {
                    sumArray[i] = arr1[i];
                }else {
                    sumArray[i] = arr2[i];
                }
            }else {
                sumArray[i] = arr1[i] + arr2[i];
            }
        }

 

z góry dziękuje za pomoc.

2 odpowiedzi

+1 głos
odpowiedź 9 października 2017 przez Schizohatter Nałogowiec (39,600 p.)
Można to też tak zrobić:

https://pastebin.com/H37J4266

Pisane z telefonu. Jest tam literowka w pierwszej linijce i mogą być jeszcze jakieś, ale idea jest.
komentarz 9 października 2017 przez PanKill Nowicjusz (230 p.)
a mógłbyś wytłumaczyć co oznacza ten zapis: (arr1[i] ¦¦ 0) + (arr2[i] ¦¦ 0);

ponieważ nie spotkałem się z takim znakiem ¦¦ :(
komentarz 9 października 2017 przez Schizohatter Nałogowiec (39,600 p.)
Chodzi o zwykly pipe (pionowa linia). Nie umialemgo znalezc na klawiaturze telefonu. https://stackoverflow.com/questions/2802055/what-does-the-construct-x-x-y-mean
komentarz 9 października 2017 przez Schizohatter Nałogowiec (39,600 p.)
| ← o taki znak
komentarz 9 października 2017 przez PanKill Nowicjusz (230 p.)

dzięki wielkie za pomocsmiley

0 głosów
odpowiedź 9 października 2017 przez xandros Nałogowiec (29,450 p.)
W warunku masz przepisanie liczb nadmiarowych, a w elsie dodawanie.

Podobne pytania

0 głosów
1 odpowiedź 1,156 wizyt
0 głosów
1 odpowiedź 555 wizyt
pytanie zadane 19 kwietnia 2021 w JavaScript przez MarcoPolo Nowicjusz (180 p.)
+1 głos
1 odpowiedź 157 wizyt

92,575 zapytań

141,424 odpowiedzi

319,649 komentarzy

61,960 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...