Набираю в консоли Google Chrome следующий пример (и получаю интересный результат): for (num = 050 num <= 100 num = num + 1) { console.log(num) } <br>Печать почему-то начинается от 40. Если ввести вместо этого num = 50, то от 50. В чем разница этих значений для JavaScript, и почему цикл начинается с 40 в первом случае?
Ответ Числа, начинающиеся с нуля, считаются восьмеричными, если в них нет цифр больше 7. Ссылка на справку Грамматику можно посмотреть в спецификации: 11.8.3 Numeric Literals