Изрязване на стринг

A

Anonymous

Guest
Код:
<script type="text/javascript">
tstr = window.prompt("Въведете текст");
scut = window.prompt("Vyvedete chislo do kydeto iskate da byde izrqzan stringa");
document.write(tstr.slice(0,scut));
</script>

Как да направя следните проверки :

1. Да ли е въведено число
2. Дали числото е по-голямо от дължината на низа
3. Дали числото което съм въвел е положително


Спешно ми е !!!!
 
HTML:
<script type="text/javascript">
tstr = window.prompt("Въведете текст");
scut = window.prompt("Vyvedete chislo do kydeto iskate da byde izrqzan stringa");

var ncut = parseInt(scut);

if (isNaN(ncut) || ncut>tstr.length) 
    alert('Bad length!');
else
    document.write(tstr.slice(0,scut));

</script>

Сори - докато го напиша и си отговорил!

parseInt преобразува стринг в число, isNaN() прави проверка дали аргумент не е число (is Not a Number).
 
Извинявайте но да попитам кое прави другите две проверки ?

2. Дали числото е по-голямо от дължината на низа
3. Дали числото което съм въвел е положително

понеже не разбирам много от javaScript
 
Не е ли число ? - isNaN(ncut)
По-дълго ли е от стринга ? - ncut>tstr.length

Ако числото е по-дълго от дължината на низа няма нужда да се прави проверка дали е положително тъй като низа може да е с дължина 0 или по-голяма ?
 
Ако числото е по голямо да се от низа да се изведе някакво съобщение.
Нещо подобно :


Код:
alert("числото '"+scut+"' е по голямо от дължината на низа '"+tstr+"' ");

Незнам къде точно да го сложа в кода .
 
Написал съм ти го, не го ли видя в кода?

HTML:
<script type="text/javascript">
tstr = window.prompt("Въведете текст");
scut = window.prompt("Vyvedete chislo do kydeto iskate da byde izrqzan stringa");

var ncut = parseInt(scut);

if (isNaN(ncut) || ncut>tstr.length) 
[size=4]    alert(scut + ' не е число или е по-голямо от дължината на "'+tstr+'"!');[/size]
else
    document.write(tstr.slice(0,scut));

</script>
 
Идеята ми беше да има 2 отделни alert за всека от проверките . Т.е да има два цикъла в единия проверяваме дали сме въвели символ или число , а във втория дали числото е по-голямо от дължината на низа и alert ще се показва тогава когато числото е по голямо от низа .
 
Тогава става така:
[js]
if (isNaN(ncut))
alert(scut + ' не е число !');

else if (ncut>tstr.length)
alert(scut + ' е по-голямо от дължината на "'+tstr+'"!');

else
document.write(tstr.slice(0,scut));
[/js]
 

Back
Горе