You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Formik中number类型Input处理异常,正则校验多零值两位小数失效

问题原因

  • 输入框类型导致值格式异常:你给输入框设置了type="number",当输入的整数值过大(比如连续输入大量0触发超长整数场景)时,浏览器会自动把e.target.value的返回值转换为科学计数法格式,比如输入1后接20个0,最终拿到的值会是1e+20,而非你预期的纯数字字符串。
  • 正则规则不兼容科学计数法:你编写的校验正则/^$|^\d+\.?\d{0,2}$/仅支持匹配空值、纯整数、或者带最多两位小数的数值字符串,无法匹配带e字符的科学计数法格式,因此会将这类本来符合「最多两位小数」要求的大整数判定为非法,触发拦截逻辑。

内容的提问来源于stack exchange,提问作者dsrtf0x

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 04:54:06