Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Cięcie tablicy wielowymiarowej
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Kao
Witam
Siedzę od kilku godzin i mam dość tego wydawało by się prostego zadania
a mianowicie:
Mam tablicę wielowymiarową z liczbami i chciałbym na niej zrobić dwa cięcia:
- pierwsze to wyciąć pierwszy wiersz i zrobić z niego tablicę 1 wymiarową bez pierwszego elementu,
- drugie to wyciąć pierwszą kolumnę i zrobić z niej tablicę 1 wymiarową.
Ostania rzecz to po tych cięciach tablicę jaką otrzymaliśmy (bez wiersza i kolumny) zapisać jako nową tablicę wielowymiarową
Oto kod:
Kod
       var tabData = [
          [0,1000,2000,3000,4000,5000,10000],
          [12,101,202,    303,    506,    1012,    0],
          [24,54,109,    164,    274,    548,    823],
          [36,39,79,    118,    197,    395,    593],
          [48,32,64,    96,    160,    320,    480],
          [60,27,55,    82,    137,    275,    413],
          [72,24,49,    73,    123,    246,    369],
          [84,22,45,    67,    113,    226,339],
          [96,21,42,63,105,211,317] ];
      
       tabRowOne=tabData.length-1;
       tabColOne=tabData[0].length-1;

        for (i=0; i<=tabRowOne; i++) document.writeln("["+tabData[i]+"]<br />");
        // Split array
        // and create valCredit
        tabRowTemp = tabRowOne - 1;
        var tabSplitOne = new Array(tabRowTemp);
        for (i=0; i<=tabRowOne; i++) {
        n = i-1;
         if (i > 0)  tabSplitOne[n] = tabData[i];
           else var valCredit = tabData[i].splice(1,tabData.length);
        }
        
        document.writeln("usuwanie wiersza:"+valCredit+"<br />");
        for (i=0; i<=tabRowTemp; i++) document.writeln("["+tabSplitOne[i]+"]<br />");
        
        // and create valMonth
        var tabSplitTwo = new Array(tabRowTemp);

        for (i=0; i<=tabRowOne; i++) {        
          tabSplitTwo[i] = tabSplitOne[i].splice(1,tabSplitOne[i].length);
          //tu będzie jeszcze tworzenie nowej tab
        }
        for (i=0; i<=tabRowOne; i++) document.writeln("["+tabSplitTwo[i]+"]<br />");


I teraz pierwszą rzecz zrobiłem, ale przy drugiej FF w konsoli pokazuje mi: Błąd: tabSplitOne[i] is undefined, Wiersz:
Kod
tabSplitTwo[i] = tabSplitOne[i].splice(1,tabSplitOne[i].length);


Ale nie kumam czemu !
Pomocy
Pozdr.

Ps. Sorry za zdublowanie postu z działu Przedszkole, ale tam nikt mi nie umiał odpowiedzieć na to pytanie.
erix
Cytat
Ps. Sorry za zdublowanie postu z działu Przedszkole, ale tam nikt mi nie umiał odpowiedzieć na to pytanie.


To nie zmienia faktu, że jest to niezgodne z regulaminem - crosspost na forum jest zabroniony.

http://forum.php.pl/index.php?showtopic=151416&hl=

To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.