Member 13583764 Ответов: 1

Почему не отображается "цикл, когда строка используется вместо переменной"? но он работает для переменной с тем же строковым значением.


Я изучаю JavaScript, и я столкнулся с проблемой.
Я хотел увидеть петлю до бесконечности для 2*2. Я инициализировал две переменные x и y. Я написал цикл while ( while(x != Infinity){} ).

Это работает, когда пишешь вот так:
(y = y + x + "<br>").
Но не тогда, когда я так писал.:
(y = "" + x + "<br>";).

Я не мог понять разницы. Кажется, что обе линии одинаковы. Может ли кто-нибудь помочь мне понять эту концепцию?

Спасибо:)

Что я уже пробовал:

<!DOCTYPE html>
<html>
<тело>

&ЛТ;Р ИД="демо"&ГТ;&ЛТ;/п&ГТ;

<скрипт>
var x = 2;
var y = "";
в то время как(x != бесконечность){
x = x * x;
y = "" + x + "<br>";
документ.метода getElementById("демо").innerHTML будет = Ъ;
}
</script>

</body>
</html>

1 Ответов

Рейтинг:
2

Karthik_Mahalingam

если вы видите эту строку

y = "" + x + "<br>"

вы продолжаете перезаписывать переменную y от От 0 до бесконечности таким образом, в конце цикла последнее значение будет сохранено в переменной, которая является Infinity
Вы должны добавить значение в переменную, чтобы увидеть весь результат цикла.
использовать
y += x + "<br>"