var isArray = require('./isArray'); /** * covert value into number if numeric */ function toNumber(val){ // numberic values should come first because of -0 if (typeof val === 'number') return val; // we want all falsy values (besides -0) to return zero to avoid // headaches if (!val) return 0; if (typeof val === 'string') return parseFloat(val); // arrays are edge cases. `Number([4]) === 4` if (isArray(val)) return NaN; return Number(val); } module.exports = toNumber;