Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: isNan

Vasta_alkaja [21.10.2008 15:38:22]

#

var otettu_maara = parseInt($("maara_" + rivin_numero).value, 10);

isNan tarkistuksella otettu_maara ei ole numero, jos arvo on tyhjä. Miten saisin arvon pakotettua olemaan vaikka 0.

Koodin pätkän olen viisaammaltani saanut ja hiukan ihmetyttää tuo loppuarvo 10. Mitä sillä tarkoitetaan

Grez [21.10.2008 15:43:11]

#

10 tarkoittaa, että syöteluku on 10-kantainen. Eli esim. heksaluku olisi 16-kantainen jne.

Miten olisi:
if(isNaN(otettu_maara)) otettu_maara=0

Metabolix [21.10.2008 15:45:32]

#

Ota teksti ylös ja tarkista sen pituus (teksti.length).

var teksti = laatikko.value;
if (teksti.length == 0) {
  teksti = "0";
}
var luku = parseInt(teksti);

Tietenkin jos haluat muutkin vialliset syötteet nolliksi, voit tehdä tarkistuksen vasta jäljempänä:

if (!luku) {
  luku = 0;
}

Jos olisit vaikka Googleen kirjoittanut sanat "parseInt JS", olisit helposti saanut selville, että toinen parametri on käytettävän lukujärjestelmän kantaluku.

Vasta_alkaja [22.10.2008 16:24:05]

#

Kiitoksia tästä avustanne. Aina ei meinaa muistaa tuota Google:a, kun täältä saa niin hyviä vastauksia sekä vaihtoehtoisia toteutustapoja.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta