00001 var toNumber = require('./toNumber'); 00002 00004 var INFINITY = 1 / 0, 00005 MAX_INTEGER = 1.7976931348623157e+308; 00006 00030 function toFinite(value) { 00031 if (!value) { 00032 return value === 0 ? value : 0; 00033 } 00034 value = toNumber(value); 00035 if (value === INFINITY || value === -INFINITY) { 00036 var sign = (value < 0 ? -1 : 1); 00037 return sign * MAX_INTEGER; 00038 } 00039 return value === value ? value : 0; 00040 } 00041 00042 module.exports = toFinite;