safeDouble static method

double safeDouble(
  1. dynamic value, [
  2. double defaultValue = 0.0
])

安全解析double,如果传递的value不是num类型,则返回默认值

Implementation

static double safeDouble(dynamic value, [double defaultValue = 0.0]) {
  if (value is double) {
    return value.isNaN ? defaultValue : value;
  } else if (value is int) {
    return double.parse(value.toString());
  } else if (value is String && double.tryParse(value) != null) {
    return double.parse(value);
  } else {
    return defaultValue;
  }
}