parseFloatJs static method

num parseFloatJs(
  1. dynamic value
)

Implementation

static num parseFloatJs(dynamic value) {
  final text = value?.toString().trimLeft() ?? '';
  if (text.startsWith('Infinity')) return double.infinity;
  if (text.startsWith('+Infinity')) return double.infinity;
  if (text.startsWith('-Infinity')) return double.negativeInfinity;

  final match =
      RegExp(r'^[+-]?(?:(?:\d+\.\d*)|(?:\.\d+)|(?:\d+))(?:[eE][+-]?\d+)?')
          .firstMatch(text);
  if (match == null) return double.nan;
  return double.tryParse(match.group(0)!) ?? double.nan;
}