Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果在零(0)前加前缀,则显示意外结果的EVAL函数_Javascript_Jquery - Fatal编程技术网

Javascript 如果在零(0)前加前缀,则显示意外结果的EVAL函数

Javascript 如果在零(0)前加前缀,则显示意外结果的EVAL函数,javascript,jquery,Javascript,Jquery,我从eval函数得到了一个意外的结果 alerteval1+033 033是十进制27的八进制表示 因此,eval1+033是eval1+27是eval28是28如果您有一个字符串,其中包含一个前导零的数字,并且希望该数字被视为十进制基数-10,则可以使用parseInt提供10作为第二个参数 parseInt(string, radix); var-str=033; var x=parseIntstr,10; console.logx+1;对我来说似乎是正确的结果。@凯文:我可以把截图发

我从eval函数得到了一个意外的结果

alerteval1+033 033是十进制27的八进制表示


因此,eval1+033是eval1+27是eval28是28

如果您有一个字符串,其中包含一个前导零的数字,并且希望该数字被视为十进制基数-10,则可以使用parseInt提供10作为第二个参数

parseInt(string, radix);
var-str=033; var x=parseIntstr,10;
console.logx+1;对我来说似乎是正确的结果。@凯文:我可以把截图发给你吗。它显示28。我还检查了其他机器。请您分享您的代码片段。是的,应该是28。一个解决方案:不要将eval用于简单的算术。另一个解决方案:绝对不要对任何您无法控制的源使用eval。谢谢,但解决方案是什么?@sAcH去掉前导零?您有什么问题?如果非技术用户在任何数字前错误地键入bi 0,则不会按照他们的想法显示结果。那么我们如何克服这种情况呢?也许非技术用户不应该编辑程序的源代码?