javascript цикл while
нужно получить все степени тройки не превышающие 100.
var x = 3;
while(x < 100) {
console.log(x);
x = x * 3;
}
var x = 3;
while(x < 100) {
console.log(x);
x = x * 3;
}
3
9
27
81
243
у меня так выдаёт. Почему? Или это глюк гугла? что я не так написал?
Ответы (1 шт):
Если вы запустите этот код в отдельном файле, скажем в Node.js или внутри HTML-страницы, он выдаст правильный результат. Но если вы его запустите в консоли браузера или в REPL Node.js, последняя цифра (243) будет результатом не console.log(x); — запуск в консоли выводит под конец результат последнего вычисления, так что это будет результат x = x * 3;.
В песочнице работает правильно:
'use strict'
var x = 3;
while(x < 100) {
console.log(x);
x = x * 3;
}
Если вы запустите в консоли этот вариант, то увидите, что после добавочного вывода просто выводится undefined, то есть результат, возвращаемый console.log('End');.
'use strict'
var x = 3;
while(x < 100) {
console.log(x);
x = x * 3;
}
console.log('End');