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 />");
[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.