Type
TwitterGitHub
Draft
Draft
  • Introduction
  • ❤ Benefits
  • Getting started
    • Skeleton
    • Installation
      • npm
    • Public API
    • General concepts
  • Helper
    • recognizeValue()
      • Recognized instances
      • OfRecognized
    • resultCallback()
    • typeOf()
  • is
    • isArray()
    • isBigInt()
    • isBoolean()
    • isBooleanObject()
    • isBooleanType()
    • isClass()
    • isDate()
    • isDefined()
    • ★ isFalse()
    • isFunction()
    • isInstance()
    • isKey()
    • isNull()
    • ★ isNumber()
    • isNumberBetween()
    • isNumberObject()
    • isNumberType()
    • isObject()
    • isObjectKey()
    • isObjectKeyIn()
    • isObjectKeys()
    • isObjectKeysIn()
    • isObjectSomeKeys()
    • isPrimitive()
    • isRegExp()
    • ★ isString()
    • isStringIncludes()
    • isStringIncludesSome()
    • isStringLength()
    • isStringLengthBetween()
    • isStringObject()
    • isStringType()
    • isSymbol()
    • ★ isTrue()
    • isType()
    • isUndefined()
  • is not
    • isNotBoolean()
    • isNotDefined()
    • isNotFunction()
    • isNotNull()
    • isNotNumber()
    • isNotString()
    • isNotUndefined()
  • Are
    • areDeterminer()
      • every()
      • forEach()
      • some()
    • areBigInt()
      • every()
      • forEach()
      • some()
    • areBoolean()
      • every()
      • forEach()
      • some()
    • areDate()
      • every()
      • forEach()
      • some()
    • areDefined()
      • every()
      • forEach()
      • some()
    • ★ areFalse()
      • every()
      • forEach()
      • some()
    • areNull()
      • every()
      • forEach()
      • some()
    • ★ areNumber()
      • every()
      • forEach()
      • some()
    • areRegExp()
      • every()
      • forEach()
      • some()
    • ★ areString()
      • every()
      • forEach()
      • some()
    • areSymbol()
      • every()
      • forEach()
      • some()
    • ★ areTrue()
      • every()
      • forEach()
      • some()
    • areUndefined()
      • every()
      • forEach()
      • some()
  • Guard
    • guardArray()
    • guardBigInt()
    • guardBoolean()
    • guardClass()
    • guardDate()
    • guardDefined()
    • ★ guardFalse()
    • guardFunction()
    • guardInstance()
    • guardKey()
    • guardNull()
    • guardNumber()
    • guardNumberBetween()
    • guardObject()
    • guardObjectKey()
    • guardObjectKeyIn()
    • guardObjectKeys()
    • guardObjectKeysIn()
    • guardObjectSomeKeys()
    • guardPrimitive()
    • guardRegExp()
    • ★ guardString()
    • guardStringIncludes()
    • guardStringIncludesSome()
    • guardStringLength()
    • guardStringLengthBetween()
    • guardSymbol()
    • ★ guardTrue()
    • guardType()
    • guardUndefined()
  • object
    • are: Are {}
    • guard: Guard {}
    • guardIs: GuardIs {}
    • is: Is {}
    • isNot: IsNot {}
    • type {}
  • Interface
    • MinMax
  • Type
    • AnyBoolean
    • AnyNumber
    • AnyString
    • CallbackPayload
    • Constructor
    • Defined
    • ForEachCallback
    • GenericObject
    • Never
    • NotUndefined
    • NumberBetween
    • Primitive
    • Primitives
    • ResultCallback
    • StringOfLength
    • Type
    • Types
    • Undefined
  • Experimental
    • isParam()
  • GIT
    • Commit
    • Semantic Versioning
  • Change log
    • Keep a changelog
    • Unreleased
    • v5.0.0-rc.0
    • v4.2.0
  • License
    • MIT
  • Contact
    • ⋯ Chat
    • @ Email
  • Donate
    • ฿ Cryptocurrency
    • $ Fiat
Powered by GitBook
On this page
  • isNumberBetween()
  • Generic type variables
  • Parameters
  • Return type
  • Returns
  • Example usage
  • Type
  • Instance

Was this helpful?

Edit on GitHub
  1. is

isNumberBetween()

Previous★ isNumber()NextisNumberObject()

Last updated 3 years ago

Was this helpful?

isNumberBetween()

Checks if value is a type or an instance of (by using ) between a specified range.

is-number-between.func.ts
const isNumberBetween = <
  Type extends AnyNumber = number,
  Min extends number = number,
  Max extends number = number,
  Payload extends object = object
>(
  value: any,
  min: Min,
  max: Max,
  callback: ResultCallback<
    any,
    { min: Min; max: Max } & Payload
  > = resultCallback,
  payload?: Payload
): value is NumberBetween<Min, Max, Type> =>
  callback(
    isNumber(value)
      ? (isNumberType(min) ? value.valueOf() >= min : false) &&
          (isNumberType(max) ? value.valueOf() <= max : false)
      : false,
    value,
    { ...payload, min, max } as any
  );

Generic type variables

TypeextendsAnyNumber=number

Minextendsnumber=number

Maxextendsnumber=number

Payloadextendsobject=object

Parameters

value: any

min: Min

max: Max

callback: ResultCallback<any, { min: Min; max: Max } & Payload>

payload?: Payload

Return type

value is NumberBetween<Min, Max, Type>

Returns

Example usage

Type

// Example usage.
import { isNumberBetween } from '@angular-package/type';

const age = 13;

// true; The return type `value is NumberBetween<0, 13, number>`
isNumberBetween(age, 0, 13);
// false; The return type `value is NumberBetween<14, 28, number>`
isNumberBetween(age, 14, 28);
// false; The return type `value is NumberBetween<0, 12, number>`
isNumberBetween(age, 0, 12);
// true; The return type `value is NumberBetween<13, 13, number>`
isNumberBetween(age, 13, 13);

Instance

// Example usage.
import { isNumberBetween } from '@angular-package/type';

const ageBox = new Number(age);

// true; The return type `value is NumberBetween<0, 13, Number>`
isNumberBetween(ageBox, 0, 13);
// false; The return type `value is NumberBetween<14, 28, Number>`
isNumberBetween(ageBox, 14, 28);
// false; The return type `value is NumberBetween<0, 12, Number>`
isNumberBetween(ageBox, 0, 12);
// true; The return type `value is NumberBetween<13, 13, Number>`
isNumberBetween(ageBox, 13, 13);

A generic type variable Type constrained by indicates the number type of the given via the , by default .

A generic type variable Min constrained by the type, by default of value captured from the supplied indicates the minimum range of the provided via the and the fixed shape of optional parameter of the provided function.

A generic type variable Max constrained by the type, by default of value captured from the supplied indicates the maximum range of the provided via the and the fixed shape of optional parameter of the provided function.

The Payload generic type variable constrained by indicates the type of optional parameter of the supplied function and optional parameter of the function from which it captures its value.

The value of type to check.

The minimum range of generic type variable for a given .

The maximum range of generic type variable for a given .

A callback function of type with parameters, the that has been checked, the of this check, and of generic type variable with optional properties from the provided , to handle them before the return. By default, it uses function.

The parameter of the function consists of the and properties given in parameters of the core function, and they can't be overwritten by the given parameter of the core function.

An optional of the generic type variable is assigned to the of the given function.

The return type is a as the result of its statement indicating the is a generic type that takes generic type variables and as a range of the supplied and as the type of the supplied .

The return value is a indicating whether the is a finite of a type or an instance of between a specified range.

any
number
Number
isNumber()
any
AnyNumber
number
value
return type
Min
value
Max
value
boolean
NumberBetween
value
Min
Max
value
Type
value
boolean
number
number
Number
value
number
min
value
return type
callback
number
max
value
return type
callback
object
callback
payload
isNumberBetween()
ResultCallback
resultCallback()
value
Payload
payload
callback
min
max
payload
object
Payload
callback
payload
payload
payload
result
payload
result
payload
payload
Logotype/is-number-between.func.ts at main · angular-package/typeGitHub