目前我有以下代码
<input type="number" />
Run Code Online (Sandbox Code Playgroud)
它出现了这样的事情

右侧的小选择器允许数字变为负数.我该如何预防呢?
我对使用有疑问type="number",它造成的问题多于解决问题,无论如何我都会理智地检查它,所以我应该回去使用type="text"?
我编写了一些代码,将数字四舍五入到给定的小数位数,但在出现下溢时会使用更多位,以避免四舍五入到零,这对用户来说信息量不够。
但我注意到偶尔会有一小部分数字以科学计数法显示。我的目标用户预计不会适应科学记数法,无论如何,即使在处理下溢之后,这些数字也太小,应该被视为零。
我如何知道一个数字何时太小以至于可以用科学记数法显示?
有没有一个可以比较的最小数字?如果有的话是多少?或者,还有更好的方法?
(我知道我可以将数字转换为字符串并检查它是否有“e”,但我也是那种想知道任何纯数学解决方案的人。)