number-parse-float.js 612 B

123456789101112131415
  1. var global = require('../internals/global');
  2. var toString = require('../internals/to-string');
  3. var trim = require('../internals/string-trim').trim;
  4. var whitespaces = require('../internals/whitespaces');
  5. var $parseFloat = global.parseFloat;
  6. var FORCED = 1 / $parseFloat(whitespaces + '-0') !== -Infinity;
  7. // `parseFloat` method
  8. // https://tc39.es/ecma262/#sec-parsefloat-string
  9. module.exports = FORCED ? function parseFloat(string) {
  10. var trimmedString = trim(toString(string));
  11. var result = $parseFloat(trimmedString);
  12. return result === 0 && trimmedString.charAt(0) == '-' ? -0 : result;
  13. } : $parseFloat;