我正在使用使用eval()
的第三方javascript库,因此当我使用"1e-1"
值作为参数调用其中一个函数时,我会返回0.1
。我如何逃避这一点或避免解析数字?
一个基本的例子是:
console.log(eval("1e-1"));
我希望结果为1e-1,但是eval仍然需要在那里。
修改
好的,请忽略上面的控制台示例 THIS is the example 它应该起作用:
无法使用此库。遗憾。
答案 0 :(得分:2)
一种快速的方法是简单地用连字符实体代码替换连字符:
console.log(eval("1e-1"));
<强>更新强>
经过一段时间的实验,唯一接近的是在连字符前后放置空格:
features[1].attributes.tag= "1e - 1";
我认为值得一提的是,这足以满足您的需求。
答案 1 :(得分:2)
不要使用eval()。当然,Number("1e-1")
具有相同的“问题”。但是,如果您想要从eval返回一个字符串,则必须使用一个字符串:eval("'1e-1'")
。