如果我使用代码:
string = '010';
write = eval(string);
document.write(write)
Run Code Online (Sandbox Code Playgroud)
我在页面上写了8个.为什么?即使010不是字符串,也会发生这种情况.
dev*_*ity 20
因为010被解析为八进制.Javascript将前导零视为表示该值在基数8中.
类似地,0x10会给你16,用十六进制解析.
如果要使用指定的基础解析字符串,请使用parseInt:
parseInt('010', 8); // returns 8.
parseInt('010',10); // returns 10.
parseInt('010',16); // returns 16.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3450 次 |
| 最近记录: |