2016-10-19 3 views
-1

не знаю, почему этот фрагмент Javascript не автоматическое приращениеавтоматическое приращение умножения в Javascript

<script type="text/javascript"> 
var count = 1; 
var newCount=count*2; 
do { 

    count*2 = newCount; 

while (newCount < 25){ 
    alert ("New Count is" + newcount);} 

</script> 

Глядя бодрствуют окна с новым сосчитать до 25.

Благодаря

+0

синтаксические ошибки в реальном коде? – UnholySheep

+0

Здесь несколько ошибок: 1) 'count * 2 = newCount' не имеет смысла, 2) это не так, как работает' do-while', это должно быть 'do {...} while (...); '3)' newCount' является (будет) задано * одинаковым * значением снова и снова. –

+3

У вас есть несколько синтаксических ошибок. Например, отсутствует '}', который закрывает блок 'do' и ненужный' {'и'} 'заверяет оператор предупреждения. Кроме того, назначение в блоке do недействительно, так как операция должна быть с правой стороны, а не слева. Чтобы помочь, можете ли вы объяснить, что вы пытаетесь сделать? – GPicazo

ответ

0

Похоже, что ваша переменная присваивается в вашем do заявлении и что вам не хватает закрывающей скобки. Кроме того, alert должен находиться внутри оператора do, чтобы он предупреждал каждый раз, когда он петли, вплоть до вашего состояния.

var count = 1; 
 
var newCount = count; 
 
do { 
 
    newCount = newCount * 2; 
 
    alert("New Count is " + newCount); 
 

 
} while (newCount < 25);

+0

Это все равно не даст желаемого поведения, так как newCount будет оставаться неизменным с каждой итерацией. Кроме того, у вас есть 'newcount' вместо' newCount' в вашем оповещении – StephenTG

+1

@StephenTG Вы правы. Я неправильно понял вопрос и обновил свой ответ. – jsejcksn

3

У вас есть синтаксические ошибки в вашем коде. do...while - это не два отдельных вызова. Кроме того, ваш оператор назначения обратный.

Попробуйте заменить свой do...while цикл с этим:

do { 
    newCount = newCount * 2; 
    alert ("New Count is " + newCount); 
} while (newCount < 25) 

Я хотел бы также отметить, что, поскольку переменная count никогда не изменяется, переменная newCount всегда будет результатом 1 * 2, и это приведет к в бесконечном цикле. Мой ответ изменяет назначение цикла для использования значения newCount вместо count в его вычислении.

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