ich habe nicht so recht verstanden, was du eigentlich tust, aber warum
machst du das nicht einfach so?:function dez2hex(d) {
max = Math.pow(16,8);
var z = new Array("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F");
var x = "";
var i = 1, v = d, r = 0;
while(v > 15) {
v = Math.floor(v / 16); i++;
}
v = d;
for(j=i;j>=1;j--) {
x = x + z[Math.floor(v / Math.pow(16,j-1))];
v = v - (Math.floor(v / Math.pow(16,j-1)) * Math.pow(16,j-1));
}return x;
}
Christian,
ich habe zwar verstanden, was du eigentlich tust, aber warum machst du das nicht einfach so:
function dez2hex(d) {
return d.toString(16);
}
Du bist dir bewusst, dass bei Argumenten kleiner als 16 keine führende 0 da ist? Hm, sieht nicht so aus: ;-)
for(i=0;i<256;++i) {
for(j=0;j<256;++j) {
for(k=0;k<256;++k) {
document.write("<td>#" + dez2hex(i) + dez2hex(j) + dez2hex(k) + "</td>");
}
}
}
Und wozu die dreifache Schleife?
for (i = 0; i < 0x1000000; ++i) {
s = i.toString(16);
while (s.length < 6)
s = "0" + s;
document.write ("<td>#" + s + "</td>");
}
Gunnar
„Solang wir noch tanzen können
und richtig echte Tränen flennen,
ist noch alles offen,
ist noch alles drin.“
(Gundermann)