🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.javascript
Article #50128

Cięcie tablicy wielowymiarowej

#50128
From: KaO
Date: Sun, 06 Jun 2010 20:06
66 lines
3516 bytes
Witam
Nie znalazłem odpowiedzi na różnych forach i pozostało mi liczyć na
Waszą pomoc.

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:
<code>
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 />");
</code>
I teraz pierwszą rzecz zrobiłem, ale przy drugiej FF w konsoli
pokazuje mi: Błąd: tabSplitOne[i] is undefined, Wiersz:
<code>
tabSplitTwo[i] = tabSplitOne[i].splice(1,tabSplitOne[i].length);
</code>
ale nie kumam czemu !
Pomocy
Pozdr.
Technical Details
Message-ID: <d279bb71-94ec-4fd7-8c20-3716fe7a3916@j8g2000yqd.googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!feeder.erje.net!news2.arglkargh.de!news.wiretrip.org!feeder2.cambriumusenet.nl!feed.tweaknews.nl!postnews.google.com!j8g2000yqd.googlegroups.com!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!feeder.erje.net!news2.arglkargh.de!news.wiretrip.org!feeder2.cambriumusenet.nl!feed.tweaknews.nl!postnews.google.com!j8g2000yqd.googlegroups.com!not-for-mail
From: KaO <daniel.piatkowski@gmail.com>
Newsgroups: pl.comp.lang.javascript
Subject: Cięcie tablicy wielowymiarowej
Date: Sun, 6 Jun 2010 13:06:36 -0700 (PDT)
Organization: http://groups.google.com
Lines: 68
Message-ID: <d279bb71-94ec-4fd7-8c20-3716fe7a3916@j8g2000yqd.googlegroups.com>
NNTP-Posting-Host: 77.113.92.245
Mime-Version: 1.0
X-Trace: posting.google.com 1275854796 32004 127.0.0.1 (6 Jun 2010 20:06:36 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Sun, 6 Jun 2010 20:06:36 +0000 (UTC)
Complaints-To: groups-abuse@google.com
Injection-Info: j8g2000yqd.googlegroups.com; posting-host=77.113.92.245;  posting-account=DjVNbAoAAAAYjtabAQbuo_aTEqMHPVQP
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2.3)  Gecko/20100401 Firefox/3.6.3 ( ),gzip(gfe)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit