isKey()
isKey()
isKey()Checks if any value is one of the string, number, or symbol type.
const isKey = <Payload extends object>(
value: any,
callback: ResultCallback<any, Payload> = resultCallback,
payload?: Payload
): value is PropertyKey =>
callback(
isStringType(value) || isNumberType(value) || isSymbol(value),
value,
payload
);Generic type variables
Payloadextendsobject
PayloadextendsobjectThe Payload generic type variable constrained by object indicates the type of optional parameter payload of the supplied callback function and payload optional parameter of the isKey() function from which it captures its value.
Parameters
value: any
value: anyThe value of any type to check.
callback: ResultCallback<any, Payload>
callback: ResultCallback<any, Payload>A callback function of ResultCallback type with parameters, the value that has been checked, the result of this check, and payload of generic type variable Payload with optional properties from the provided payload, to handle them before the result return. By default, it uses resultCallback() function.
payload?: Payload
payload?: PayloadAn optional object of the generic type variable Payload is assigned to the payload of the given callback function.
Return type
value is PropertyKey
value is PropertyKeyThe return type is a boolean as the result of its statement indicating the value is PropertyKey.
Returns
The return value is a boolean indicating whether the provided value is a PropertyKey.
Example usage
Key of string
string// Example string usage.
import { isKey } from '@angular-package/type';
const STRING = 'surname';
const STRING_INSTANCE = new String(STRING);
isKey(STRING); // true
isKey(STRING_INSTANCE); // trueKey of number
number// Example number usage.
import { isKey } from '@angular-package/type';
const NUMBER = 27;
const NUMBER_INSTANCE = new Number(NUMBER);
isKey(NUMBER); // true
isKey(NUMBER_INSTANCE); // trueKey of symbol
symbol// Example symbol usage.
import { isKey } from '@angular-package/type';
const STRING = 'surname';
const NUMBER = 27;
const SYMBOL_NUMBER: unique symbol = Symbol(NUMBER);
const SYMBOL_STRING: unique symbol = Symbol(STRING);
isKey(SYMBOL_NUMBER); // true
isKey(SYMBOL_STRING); // trueLast updated
Was this helpful?