parseInt skal modtage en streng som inddata og læser så forfra i strengen efter et tal. hvis der fx står "123Hopsa" vil den returnere taller 123.
men hvis der blot står "Hopsa" giver den fejl for der er jo ikke antydningen af et tal i den streng.
Det undgår jeg ved at skrive 0+streng for på den måde sikrer jeg at der altid som minimum står et ciffer 0 forrest i strengen. Det laver parseInt så tallet 0 udaf.
men parseInt kan også læse binære, oktale og heksadecimale tal, hvad slags tal den skal læse skal så angives på en eller anden måde. og hvis et tal begunder med cifferet '0' den gå ud fra at det er et oktalt tal, hvis ikke man angiver en nr2 parameter der udtrykkeligt siger det er et decimalt tal.
test evt;
alert( parseInt("012345") +", " +parseInt("012345",10) );
parseFloat er strengere i sine krav til inddata og benytter altid det decimale talsystem. Den vil give fejl hvis der står bogstaver efter tallet, så her sættes der kun "0" foran for at forhindre fejl ved helt tomt felt.
om det er 0+inputstreng eller "0"+inputstreng er helt ligegyldig. '+'-operatoren konvertere begge operander til strenge, blot een af dem er en streng.
Min bibel om javascripts foruddefinerede funktioner er
http://developer.netscape.com/docs/manuals/js/client/jsref/index.htm (Client-Side JavaScript Reference) den har et super index at søge i.
Men man skal vænne sig lidt til den før den rigtig kan kaldes nyttig, så suppler med spørgsmål her :-)
mvh JakobA