forked from ard/ruoyi-api

‘liusuyi’
2024-03-28 8e14b2fb593cc99aa6750e8f82d8c96343b4e9c1
1
2
3
4
5
6
7
8
9
import { isArray } from './isArray';
 
export function isNumeric(val: any): val is number | string {
  // parseFloat NaNs numeric-cast false positives (null|true|false|"")
  // ...but misinterprets leading-number strings, particularly hex literals ("0x...")
  // subtraction forces infinities to NaN
  // adding 1 corrects loss of precision from parseFloat (#15100)
  return !isArray(val) && (val - parseFloat(val) + 1) >= 0;
}