Męczę się z bardzo niefajnym błędem JS. Mam funkcję:
Kod
function wykres(miejsce, tytul, slupki){
slupki = slupki.split(";");
var szerokosc = (550-5)/(slupki.length-1)-5;
var najwiekszy = 0;
for(var n=0; n<(slupki.length-1); n++){
slupki2 = slupki[n].split('=%=');
if(parseFloat(slupki2[1]) > najwiekszy){
najwiekszy = parseFloat(slupki2[1]);
}
}
// coś tam dalej
}
slupki = slupki.split(";");
var szerokosc = (550-5)/(slupki.length-1)-5;
var najwiekszy = 0;
for(var n=0; n<(slupki.length-1); n++){
slupki2 = slupki[n].split('=%=');
if(parseFloat(slupki2[1]) > najwiekszy){
najwiekszy = parseFloat(slupki2[1]);
}
}
// coś tam dalej
}
zmienna slupki = "Poniedziałek=%=10;Sobota=%=2;Niedziela=%=26;"
Przy wykonywaniu funkcji dostaję błąd:
Cytat
TypeError: slupki.split is not a function
slupki2 = slupki.split('=%=');
slupki2 = slupki.split('=%=');
Według moich ustaleń problemem jest pętla for, która wykonuje
Kod
slupki2 = slupki[n].split('=%=');
co przy pierwszym przerzuceniu pęli jest równe:
Kod
slupki2 = slupki[0].split('=%=');
a powinno (przynajmniej tak działa):
Kod
slupki2 = slupki['0'].split('=%=');
czyli z apostrofami. Tylko jak to zrobić?
Dodam, że na stronach pod innym adresem śmiga. Próbuję to zaimplementować do trzeciej i zaczyna się buntować.
Jak się z tym uporać?