Thread View: pl.comp.lang.javascript
2 messages
2 total messages
Started by KaO
Sun, 06 Jun 2010 20:06
Cięcie tablicy wielowymiarowej
Author: KaO
Date: Sun, 06 Jun 2010 20:06
Date: Sun, 06 Jun 2010 20:06
66 lines
3516 bytes
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.
Re: Cięcie tablicy wielowymiarowej
Author: szomiz
Date: Sun, 11 Jul 2010 12:29
Date: Sun, 11 Jul 2010 12:29
20 lines
1671 bytes
1671 bytes
"KaO" <daniel.piatkowski@gmail.com> wrote in message
news:d279bb71-94ec-4fd7-8c20-3716fe7a3916@j8g2000yqd.googlegroups.com...
> Siedzę od kilku godzin i mam dość tego wydawało by się prostego
> zadania a mianowicie
Bo zadanie jest dziwnie sformuowane.
Najpierw trzeba zrobic rzecz druga:
for(vak k=0;k<tab.length;k++)
res2.push(tab[k].shitf());
Nastepnie rzecz pierwsza:
res1=tab.shift();
I w tab zostaje to co ma zostac.
sz.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads