JavaScript严格模式不支持八进制的问题讲解

来自:互联网
时间:2021-11-07
阅读:

JavaScript严格模式不支持八进制的问题讲解

关于JavaScript严格模式不支持八进制的这个问题,首先我们大家都知道JavaScript是可以通过在数字前面加0表示八进制,

如下:

let i = 011;
console.log(i); // 9

但是在严格模式下,这种方式就出了问题:

"use strict";
let i = 011; // 报错
// Uncaught SyntaxError: Octal literals are not allowed in strict mode.
console.log(i);


意思就是八进制在严格模式下不支持。

如果一定要用,可以用过曲线救国的方式:

把八进制的数据设置为字符串,然后通过parseInt进行转化,设置转化进制为八进制。

"use strict";
let i = '011';
console.log(parseInt(i, 8)); // 9
返回顶部
顶部