partyzanx
@partyzanx

Почему Number('0o1') это 1?

Как происходит процесс преобразования?
  • Вопрос задан
  • 196 просмотров
Решения вопроса 3
MvcBox
@MvcBox
Back-end developer
Number пытается парсить все доступны варианты записей.
0o1 - это валидная запись (восьмеричная система исчисления), здесь даже не надо использовать Number
console.log(0o1);
Ответ написан
partyzanx
@partyzanx Автор вопроса
Целые числа могут быть выражены в десятичной, шестнадцатеричной, восьмеричной и двоичной системах счисления.
Запись начала литерала 0o (или 0O) указывает, что число находится в восьмеричной СС. Октальные целые числа могут включать только цифры 0-7.
Начало 0x (или 0X) указывает шестнадцатеричную СС. Шестнадцатеричные целые числа могут включать цифры (0-9) и буквы a-f и A-F.
Начало 0b (или 0B) указывает двоичную СС. Двоичные целые числа могут содержать цифры только 0 и 1.
Примеры:

alert('0o11' == 9); // true
alert('0x10' == 16); // true
alert('0b11' == 3); // truе
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы