diff --git a/lodash/lodash-tests.ts b/lodash/lodash-tests.ts index ed64e9179..bc33ed1ea 100644 --- a/lodash/lodash-tests.ts +++ b/lodash/lodash-tests.ts @@ -6569,6 +6569,75 @@ module TestToInteger { } } +// _.toLength +module TestToLength { + { + let result: number; + result = _.toLength(true); + result = _.toLength(1); + result = _.toLength('a'); + result = _.toLength([]); + result = _.toLength({}); + } + + { + let result: _.LoDashImplicitWrapper; + + result = _(true).toLength(); + result = _(1).toLength(); + result = _('a').toLength(); + result = _([1]).toLength(); + result = _([]).toLength(); + result = _({}).toLength(); + } +} + +// _.toNumber +module TestToNumber { + { + let result: number; + result = _.toNumber(true); + result = _.toNumber(1); + result = _.toNumber('a'); + result = _.toNumber([]); + result = _.toNumber({}); + } + + { + let result: _.LoDashImplicitWrapper; + + result = _(true).toNumber(); + result = _(1).toNumber(); + result = _('a').toNumber(); + result = _([1]).toNumber(); + result = _([]).toNumber(); + result = _({}).toNumber(); + } +} + +// _.toSafeInteger +module TestToSafeInteger { + { + let result: number; + result = _.toSafeInteger(true); + result = _.toSafeInteger(1); + result = _.toSafeInteger('a'); + result = _.toSafeInteger([]); + result = _.toSafeInteger({}); + } + + { + let result: _.LoDashImplicitWrapper; + + result = _(true).toSafeInteger(); + result = _(1).toSafeInteger(); + result = _('a').toSafeInteger(); + result = _([1]).toSafeInteger(); + result = _([]).toSafeInteger(); + result = _({}).toSafeInteger(); + } +} + /******** * Math * ********/ diff --git a/lodash/lodash.d.ts b/lodash/lodash.d.ts index 063ae8522..ec40ddac3 100644 --- a/lodash/lodash.d.ts +++ b/lodash/lodash.d.ts @@ -10519,6 +10519,133 @@ declare module _ { toInteger(): LoDashExplicitWrapper; } + //_.toLength + interface LoDashStatic { + /** + * Converts `value` to an integer suitable for use as the length of an + * array-like object. + * + * **Note:** This method is based on [`ToLength`](http://ecma-international.org/ecma-262/6.0/#sec-tolength). + * + * @static + * @memberOf _ + * @category Lang + * @param {*} value The value to convert. + * @return {number} Returns the converted integer. + * @example + * + * _.toLength(3); + * // => 3 + * + * _.toLength(Number.MIN_VALUE); + * // => 0 + * + * _.toLength(Infinity); + * // => 4294967295 + * + * _.toLength('3'); + * // => 3 + */ + toLength(value: any): number; + } + + interface LoDashImplicitWrapperBase { + /** + * @see _.toLength + */ + toLength(): LoDashImplicitWrapper; + } + + interface LoDashExplicitWrapperBase { + /** + * @see _.toLength + */ + toLength(): LoDashExplicitWrapper; + } + + //_.toNumber + interface LoDashStatic { + /** + * Converts `value` to a number. + * + * @static + * @memberOf _ + * @category Lang + * @param {*} value The value to process. + * @returns {number} Returns the number. + * @example + * + * _.toNumber(3); + * // => 3 + * + * _.toNumber(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toNumber(Infinity); + * // => Infinity + * + * _.toNumber('3'); + * // => 3 + */ + toNumber(value: any): number; + } + + interface LoDashImplicitWrapperBase { + /** + * @see _.toNumber + */ + toNumber(): LoDashImplicitWrapper; + } + + interface LoDashExplicitWrapperBase { + /** + * @see _.toNumber + */ + toNumber(): LoDashExplicitWrapper; + } + + //_.toSafeInteger + interface LoDashStatic { + /** + * Converts `value` to a safe integer. A safe integer can be compared and + * represented correctly. + * + * @static + * @memberOf _ + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toSafeInteger(3); + * // => 3 + * + * _.toSafeInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toSafeInteger(Infinity); + * // => 9007199254740991 + * + * _.toSafeInteger('3'); + * // => 3 + */ + toSafeInteger(value: any): number; + } + + interface LoDashImplicitWrapperBase { + /** + * @see _.toSafeInteger + */ + toSafeInteger(): LoDashImplicitWrapper; + } + + interface LoDashExplicitWrapperBase { + /** + * @see _.toSafeInteger + */ + toSafeInteger(): LoDashExplicitWrapper; + } + /******** * Math * ********/