Number
与数字类型相关的方法 (目前只有 3 个)
inRange
检查给定数字是否在两个数字之间。包含起始数字。结束号码是唯一的。范围的开始和结束可以是升序或降序。如果未指定结束值,则将其设置为起始值。并且 start 设置为 0。
传递范围的数字、开始和结束(可选)。如果给定的数字在范围内,_.inRange 函数将返回 true。
1 2 3 4 5 6 7 8 9 10
| import { inRange } from 'radash'
inRange(10, 0, 20) inRange(9.99, 0, 10) inRange(Math.PI, 0, 3.15) inRange(10, 10, 20) inRange(10, 0, 10)
inRange(1, 2) inRange(1, 0)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| export function inRange(number: number, end: number): boolean export function inRange(number: number, start: number, end: number): boolean export function inRange(number: number, start: number, end?: number): boolean { const isTypeSafe = typeof number === 'number' && typeof start === 'number' && (typeof end === 'undefined' || typeof end === 'number')
if (!isTypeSafe) { return false }
if (typeof end === 'undefined') { end = start start = 0 }
return number >= Math.min(start, end) && number < Math.max(start, end) }
|
toFloat
如果可能,将值转换为浮点数
_.toFloat 函数将尽力将给定值转换为浮点数。
1 2 3 4 5
| import { toFloat } from 'radash'
toFloat(0) toFloat(null) toFloat(null, 3.33)
|
这段代码定义了一个名为 toFloat 的 TypeScript 函数,用于将输入值转换为浮点数。如果转换失败或输入值为 null 或 undefined,则返回一个默认值。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| export const toFloat = <T extends number | null = number>( value: any, defaultValue?: T ): number | T => { const def = defaultValue === undefined ? 0.0 : defaultValue if (value === null || value === undefined) { return def } const result = parseFloat(value)
return isNaN(result) ? def : result }
|
toInt
如果可能的话,将值转换为 int
_.toint 函数将尽最大努力将给定值转换为 int。
1 2 3 4 5
| import { toInt } from 'radash'
toInt(0) toInt(null) toInt(null, 3)
|
这段代码定义了一个名为 toInt 的 TypeScript 函数,用于将输入值转换为整数
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| export const toInt = <T extends number | null = number>( value: any, defaultValue?: T ): number | T => { const def = defaultValue === undefined ? 0 : defaultValue if (value === null || value === undefined) { return def } const result = parseInt(value) return isNaN(result) ? def : result }
|