Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
SyntaxError: "0"-prefixed octal literals and octal escape seq. are deprecated
Message
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
Dans cet article
Type d'erreur
SyntaxError, uniquement enmode strict.
Quel est le problème ?
Les littéraux en base octale et les séquences d'échappement octales sont dépréciées et lèvent une exceptionSyntaxError en mode strict. À partir d'ECMAScript 2015, la syntaxe standard utilise un zéro suivi de la lettre « o » (en minuscule ou en majuscule) (0o or0O).
Exemples
>Littéraux en base octale préfixés par 0
js
"use strict";03;// SyntaxError: "0"-prefixed octal literals and octal escape sequences// are deprecatedSéquences d'échappement en base octale
js
"use strict";"\251";// SyntaxError: "0"-prefixed octal literals and octal escape sequences// are deprecatedLittéraux valides
Pour former un littéral en base octal, on pourra utiliser un zéro suivi de la lettre « o » :
js
0o3;Pour former une séquence d'échappement en base octale, on écrira une séquence d'échappement en base hexadécimale :
js
"\xA9";