From 39a22bf15b7ecdc26e55a5e3269e64d6074e8a2d Mon Sep 17 00:00:00 2001 From: John-David Dalton Date: Sat, 31 Oct 2015 10:48:06 -0700 Subject: [PATCH] Cleanup `_.toInteger` and max `MAX_INTEGER` equal to `Number.MAX_VALUE`. --- lodash.js | 11 ++++++----- test/test.js | 2 +- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/lodash.js b/lodash.js index 8d06a5770..f44b24213 100644 --- a/lodash.js +++ b/lodash.js @@ -54,7 +54,7 @@ /** Used as references for various `Number` constants. */ var INFINITY = 1 / 0, MAX_SAFE_INTEGER = 9007199254740991, - MAX_INTEGER = 1e308; + MAX_INTEGER = 1.7976931348623157e+308; /** Used as references for the maximum length and index of an array. */ var MAX_ARRAY_LENGTH = 4294967295, @@ -9837,13 +9837,14 @@ * // => 0 * * _.toInteger(-Infinity) - * // => -1e308 + * // => 1.7976931348623157e+308 */ function toInteger(value) { - if (value === INFINITY || value === -INFINITY) { - return (value < 0 ? -1 : 1) * MAX_INTEGER; - } value = +value; + if (value === INFINITY || value === -INFINITY) { + var sign = (value < 0 ? -1 : 1); + return sign * MAX_INTEGER; + } var remainder = value % 1; return value === value ? (remainder ? value - remainder : value) : 0; } diff --git a/test/test.js b/test/test.js index e37a8bf96..5a9608347 100644 --- a/test/test.js +++ b/test/test.js @@ -14,7 +14,7 @@ /** Used as references for various `Number` constants. */ var MAX_SAFE_INTEGER = 9007199254740991, - MAX_INTEGER = 1e308; + MAX_INTEGER = 1.7976931348623157e+308; /** Used as references for the maximum length and index of an array. */ var MAX_ARRAY_LENGTH = 4294967295,