Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   не пойму в чем заноза (https://javascript.ru/forum/misc/9460-ne-pojjmu-v-chem-zanoza.html)

kimart 18.05.2010 14:41

не пойму в чем заноза
 
не ясно почему s не считает сумму, а ведет себя как строковая переменная. Правда, я с JS впервые столкнулся, так что можно сказать "чайник"
<HTML>

<МЕТА content="text/html; charset=windows-1251" http-equiv="Content-Type">

<BODY>

<SCRIPT>

var d =new Array();
for(i=0;i<5;i++)
{

d[i]=prompt("Введите число","");

document.write ("d["+i+"]="+d[i]+"<br>");
}

alert ("сейчас будет хрень") ;
var s=1;
for(i=0;i<5;i++)
{
s+=d[i];
}
document.write("summ="+s);


</SCRIPT>

</BODY>

</HTML>

Kolyaj 18.05.2010 14:50

prompt-то строку возвращает.

azazello 18.05.2010 15:09

умножай на 1. Интерпретатор Javascript приведет строку к числу.
d[i]=prompt("Введите число","") * 1;
можно еще так
d[i]=Number( prompt("Введите число","") );
или так
d[i]=parseInt( prompt("Введите число","") );

B@rmaley.e><e 18.05.2010 17:16

Или просто
d[i]=+prompt("Введите число","");

kimart 18.05.2010 19:31

azazello, B@rmaley.e><e,Kolyaj спасибо вам


Часовой пояс GMT +3, время: 07:59.