eval在评估中产生问题

Mir*_*ral 1 javascript eval exception

我使用eval将字符串小数转换为小数.

eval("000451.01");
Run Code Online (Sandbox Code Playgroud)

当我使用上面的语句javascript它会抛出异常'expected;'

当使用eval("000451");它时给我一个不同的结果.

任何人都有任何想法?

SLa*_*aks 8

你应该使用eval解析数; 它将比普通方法慢几个数量级.

相反,您应该使用该parseFloat功能.像这样: parseFloat("000451.01").

您收到错误的原因是Javascript 0将以八进制数开头的数字视为不能包含小数的数字.

如果你想解析一个整数,请调用parseInt,并确保给出第二个参数10来强制它解析基数为10的数字,否则你会遇到同样的问题.