我正在玩babel-cli
。我安装了ES2015扩展,效果很好。例如,以下代码段:
let square = x => x * x;
...转换为:
"use strict";
var square = function square(x) {
return x * x;
};
但是在使用八进制数时我遇到了麻烦。例如:
let mode = 0777;
给我一个错误:
SyntaxError: index.js: Invalid number (1:11)
> 1 | let mode = 0777;
| ^
2 |
看起来它不喜欢以0
开头的数字(八进制数字)。我该如何解决这个问题?
事实上,这些数字不会出现在我的代码中,而是出现在其中一个依赖项中。
这是一个babel bug还是一个功能?什么是变通方法/解决方案?
答案 0 :(得分:3)
你做得不对,应该是let mode = 0o777;
,注意 0 和 777 之间的 o
此处的ES6文档:Binary and Octal Literals
// try this in chrome
document.write(0o777);