- PVSM.RU - https://www.pvsm.ru -

Оканчивается эпоха восьмеричных чисел с ведущим нулём в языке JavaScript

Равенство parseInt("042") === 42 (как и другие ему подобные) станет верным в Firefox следующей версии (Firefox 21) и в более новых, хотя прежде Firefox действовал по образу и подобию языка Си, считая восьмеричными числа, запись которых начиналася нулём — так что вызов parseInt("042") давал тогда значение 34.

Обсуждение в мозилловской багзилле [1] показывает, что перемена эта произошла под влиянием ECMAScript 5 и соответствует изменениям, случившимся в других браузерах (Safari 6, Google Chrome 23 и др.), в движке V8 (и в основанном на нём Node.js, например), так что в этом году Firefox оставался последним оплотом восьмеричности.

Теперь оплот этот не устоял, оплот этот пал. Обновите свои сайты по мере необходимости, особенно если они имели дело с обработкою записей времени [2], где нередко попадаются числа с ведущим нулём.

Автор: Mithgol

Источник [3]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/javascript/33245

Ссылки в тексте:

[1] в мозилловской багзилле: https://bugzilla.mozilla.org/show_bug.cgi?id=786135

[2] записей времени: http://j.mp/11O5SwS

[3] Источник: http://habrahabr.ru/post/178271/