Thanks to visit codestin.com
Credit goes to developer.mozilla.org

This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

SyntaxError: "0"-prefixed octal literals and octal escape seq. are deprecated

Сообщение

SyntaxError: Octal numeric literals and escape characters not allowed in strict mode (Edge)
SyntaxError: "0"-prefixed octal literals and octal escape sequences are deprecated;
for octal literals use the "0o" prefix instead

Перевод:

Ошибка синтаксиса: Восьмеричные числовые литералы и escape-последовательности, не разрешены в строгом режиме (Edge)
Ошибка синтаксиса: восьмеричные литералы с префиксом "0", и восьмеричные escape-последовательности считаются устаревшими;
для восьмеричных литералов используйте префикс "0o"

Тип ошибки

SyntaxError только в строгом режиме.

Что пошло не так?

Восьмеричные литералы и восьмеричные escape-последовательности являются устаревшими и будут выдавать SyntaxError в строгом режиме. С ECMAScript2015 стандартным синтаксисом является использование ведущего нуля с последующей заглавной или строчной латинской буквой "O" (0o или 0O)

Примеры

"0"-prefixed octal literals (восьмеричные литералы с префиксом "0")

js
"use strict";

03;

// Ошибка синтаксиса: восьмеричные литералы с префиксом "0" и восьмеричные escape-последовательности считаются устаревшими

Octal escape sequences (Восьмеричные escape-последовательности)

js
"use strict";

"\251";

// SyntaxError: восьмеричные литералы с префиксом "0" и восьмеричные escape-последовательности считаются устаревшими

Valid octal numbers (Допустимые восьмеричные числа)

Используйте ноль с последующей латинской буквой "o" или "O".

js
0o3;

Вместо escape-последовательностей можно использовать шестнадцатеричные escape-последовательности:

js
"\xA9";

Смотрите также