javascript报错BigNumber的overflow错误?怎么解决

        最近做项目的时候碰到的这个问题,起初我也很迷惑,询问同事之后,一下点醒我。

问题描述

        需求是,函数的参数接受input框中的值,我在input框中输入了1e18的数,这个时候函数是可以正常接受这个参数进行运行的。

        可是,如果我是实现将这个input框中的值保存下来,事先说明,这个时候保存的值是小数,之后需要乘1e18,就是这样,我将这样处理之后的数传到了函数的参数中进行处理,但是控制太却报了BigNumber的错误,告诉我overflow了。

        然后第一种情况我也是输入了10^18的数,也是直接传给函数的参数的,为什么就可以正常运行呢?

解决办法

        之后同事叫我把第二种情况处理的数据转换成字符串,也就是toString一下,结果就可以正常运行函数了。

        如果各位也碰到了类似的问题的话, 可以不妨一试。

写在最后

        虽然我也才是刚刚入行,但是也给些我从前端前辈那里听来的建议吧,

        1.不管有自己有什么想法,有任何的可能性,都要自己先尝试过去,如果觉得所有情况的都尝试过去了,实在解决不了了的话,再去问别人。

        2.善用搜索引擎。程序员就多用Google吧,你公司肯定能上Google,实在不行自己想办法。          3.就算到了不得不问别人的时候,一定一定要将自己的问题给描述清楚,自己哪里不清楚?是哪个功能实现不了吗?那这个功能实现到什么部分了?是否有将一个大功能划分成一个个小功能?你觉得自己的问题出在哪里?往往这些都是自己需要考虑的。

        4.问别人的时候,尽量一针见血,废话说少一些。

        这些话即想帮助刚入行的新人(虽然我现在也是新人),也是写给自己看的,希望自己可以一直在前端的道路上走下去,如果有小伙伴想一起交流学习经验可以私信我。

猜你喜欢

转载自blog.csdn.net/qq_41083105/article/details/118803611