2014-09-30 7 views
0
var prompt1 = prompt("Number Here"); 
var something2 = prompt("Increment Here"); 
for (var i = 5; i <= prompt1; i += 5) { 
    alert(i); 
} 

http://jsfiddle.net/davidhin/wte7d5k9/для цикла и переменных

Почему это, что, когда я меняю i += 5 к i += something2, код перестает работать?

+0

Что ваша скрипка имеет отношение к вашему вопросу? Вам нужно будет уточнить, что вы просите, включив в себя больше объяснений о том, что вы делаете, и что вы пытаетесь выполнить в своем посте. – kinakuta

ответ

6

Потому что что-то2 является строкой. Используйте для цикла loop Number (something2) для преобразования в Number.

1

запрос получает значение строки, а не значение int. Представьте, что если кто-то скажет «привет» и «мир», что произойдет?

так что вы должны сделать эти шаги:

1 /. значение разбора в тип данных int.

2 /. Проверка типов данных.

пример:

 var promptVal = parseInt(prompt1); // return NaN (not-a-number) if input isn't number. 
     if(isNaN(prompVal)) { 
     return error; 
     } 

Теперь вы можете запустить для цикла нормально.

+0

Второй, более читаемый и имеет больше смысла (для меня) – Baldrickk

+0

да, 1-й неправ, я удалил :). – Kai

Смежные вопросы