Пытаясь найти сумму эллементов массива( со значением введённым с екрана). Почему получаю NaN?

var 	mas=[];
		sum=0;
	for (var i =1; i < 4; i++) {
		mas.push(prompt("element №" + i));
		sum = sum + parseInt(mas[i]);
		alert(mas);
		alert(sum);
	}
  • Вопрос задан
  • 114 просмотров
Решения вопроса 2
У массивов индекс начинается с 0.
Для отладки лучше используйте console.log, а не alert. Так удобнее.
Ответ написан
Комментировать
f0rk
@f0rk
Индексация массивов в JavaScript начинается с нуля, а цикл в примере начинается с единицы. В результате на строчке sum = sum + parseInt(mas[i]);
0 складывается с undefined и получается NaN (Not a Number). Чтоб пример начал работать правильно нужно заменить var i = 1 на var i = 0 в условии цикла.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы