The JavaScript warning "08 (or 09) is not a legal ECMA-262 octal constant" occurs when 08
or 09
number literals are used. They can't be interpreted as an octal number.
The JavaScript warning "08 (or 09) is not a legal ECMA-262 octal constant" occurs when 08
or 09
number literals are used. They can't be interpreted as an octal number.
Warning: SyntaxError: 08 is not a legal ECMA-262 octal constant.
Warning. JavaScript execution won't be halted.
Decimal literals can start with a zero (0
) followed by another decimal digit, but If all digits after the leading 0
are smaller than 8, the number is interpreted as an octal number. Because this is not the case with 08
and 09
, JavaScript warns about it.
Note that octal literals and octal escape sequences are deprecated and will present an additional deprecation warning. The standardized syntax for octal literals uses a leading zero followed by a lowercase or uppercase Latin letter "O" (0o
or 0O)
. See the page about lexical grammar for more information.
08; 09; // SyntaxError: 08 is not a legal ECMA-262 octal constant // SyntaxError: "0"-prefixed octal literals and octal escape sequences // are deprecated
Use a leading zero followed by the letter "o";
0O755; 0o644;
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Bad_octal