如何判断 javascript 字符串是数字还是日期?

问题描述

我有一个可能是字符串化日期或数字的值。我想以不同的方式处理每个案例。

日期值可以是任何可以被日期库解析的有效日期字符串,例如 dayjs。例如:"10/10/2020""10-20-2020"...

数字值可以是实际数字,也可以是字符串形式的数字,因此像 5"5.3""10"...

例如 ->


      const number = parseFloat(value);
      if (!isNaN(number)) {
          return NumberValueConverter.prototype.toView(number);
      }

      const date = dayjs(value);
      if (date.isValid()) {
          return DateValueConverter.prototype.toView(value);
      }

此代码不起作用 - 因为像 10-10-2020、10-10-2020 这样的日期字符串最终会被解析为 10

如果我反过来做,dayjs 会将 10 之类的数字转换为有效日期。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)