feige
2024-03-01 a5a81efad512d32da6d1027fe8ab5cc29a3b6af4
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;
}