@hemjs/notions
v2.0.0
Published
Utilities for arrays, objects, strings, and more
Readme
@hemjs/notions
Utilities for arrays, objects, strings, and more.
Table of contents
Installation
Install with npm:
npm install --save @hemjs/notionsInstall with yarn:
yarn add @hemjs/notionsLang
isBoolean
Determines whether a given value is of type boolean.
Type:
function isBoolean(value?: unknown): value is boolean;Example:
import { isBoolean } from '@hemjs/notions';
isBoolean(false);
// => true
isBoolean(0);
// => false
isBoolean(null);
// => falseParameters:
value: The value to be checked. Can be any data type.
Returns:
true if value is a boolean, otherwise false.
isClass
Determines whether a given value is a class.
Type:
function isClass<T = unknown>(value: unknown): value is Class<T>;Example:
import { isClass } from '@hemjs/notions';
class Bar {}
isClass(Bar);
// => true
isClass(new Bar());
// => false
isClass(0);
// => falseParameters:
value: The value to be checked. Can be any data type.
Returns:
true if value is a class, otherwise false.
isEmpty
Determines whether a given value is considered empty.
Type:
function isEmpty(value?: unknown): value is EmptyLike;Empty Definitions:
null: Returnstruewhen anullvalue is given.undefined: Returnstruewhen anundefinedvalue is given.boolean: Returnstruewhen the boolean value isfalse.integer: Returnstruewhen an integer0value is given.float: Returnstruewhen a float0.0value is given.string: Returnstruewhen an empty string''is given.space: Returnstruewhen an string is given which contains only whitespace.array: Returntruewhen an empty array ([]) or an array containing only empty values is given.object: Returnstruewhen an empty object ({}) or an object with all properties beingnull,undefined, or empty strings is given.nan: ReturnstrueforNaN.bigint: Returnstruefor bigint zero (0n).
Non-plain objects (e.g.
Set,Map,Date) are never treated as empty.
Example:
import { isEmpty } from '@hemjs/notions';
// Arrays
isEmpty([]);
// => true
isEmpty([0, false, '', null, undefined]);
// => true
isEmpty([1, 'hello', { a: 1 }]);
// => false
// Objects
isEmpty({});
// => true
isEmpty({ a: null, b: undefined, c: '' });
// => true
isEmpty({ a: 1, b: 'hello' });
// => false
// Strings
isEmpty('');
// => true
isEmpty(' ');
// => true
isEmpty('hello');
// => false
// Other Values
isEmpty(null);
// => true
isEmpty(undefined);
// => true
isEmpty(false);
// => true
isEmpty(0);
// => true
isEmpty(0.0);
// => true
isEmpty(true);
// => false
isEmpty(1);
// => false
isEmpty('hello');
// => falseParameters:
value: The value to be checked. Can be any data type.
Returns:
true if value is empty, otherwise false.
isFunction
Determines whether a given value is of type function.
Type:
function isFunction(value?: unknown): value is (...args: unknown[]) => unknown;Example:
import { isFunction } from '@hemjs/notions';
isFunction(() => {});
// => true
isFunction(Math.random);
// => true
isFunction(0);
// => falseParameters:
value: The value to be checked. Can be any data type.
Returns:
true if value is a function, otherwise false.
isNil
Determines whether a given value is nullish (null or undefined).
Type:
function isNil(value?: unknown): value is null | undefined;Example:
import { isNil } from '@hemjs/notions';
isNil(null);
// => true
isNil(undefined);
// => true
isNil(0);
// => falseParameters:
value: The value to be checked. Can be any data type.
Returns:
true if value is nullish, otherwise false.
isNull
Determines whether a given value is exactly null.
Type:
function isNull(value?: unknown): value is null;Example:
import { isNull } from '@hemjs/notions';
isNull(null);
// => true
isNull(undefined);
// => false
isNull(0);
// => falseParameters:
value: The value to be checked. Can be any data type.
Returns:
true if value is null, otherwise false.
isNumber
Determines whether a given value is of type number.
Type:
function isNumber(value?: unknown): value is number;Example:
import { isNumber } from '@hemjs/notions';
isNumber(10);
// => true
isNumber(Math.PI);
// => true
isNumber('10');
// => falseParameters:
value: The value to be checked. Can be any data type.
Returns:
true if value is a number, otherwise false.
isObject
Determines whether a given value is of type object (excluding null).
Type:
function isObject(value?: unknown): value is object;Example:
import { isObject } from '@hemjs/notions';
isObject({});
// => true
isObject([]);
// => true
isObject(null);
// => falseParameters:
value: The value to be checked. Can be any data type.
Returns:
true if value is an object (excluding null), otherwise false.
isPlainObject
Determines whether a given value is a plain object (i.e., an object without a custom prototype).
Type:
function isPlainObject(value?: unknown): value is object;Example:
import { isPlainObject } from '@hemjs/notions';
isPlainObject({});
// => true
isPlainObject([]);
// => false
isPlainObject(Object.create(null));
// => trueParameters:
value: The value to be checked. Can be any data type.
Returns:
true if value is a plain object, otherwise false.
isString
Determines whether a given value is of type string.
Type:
function isString(value?: unknown): value is string;Example:
import { isString } from '@hemjs/notions';
isString('hello');
// => true
isString(Symbol('hello'));
// => false
isString(10);
// => falseParameters:
value: The value to be checked. Can be any data type.
Returns:
true if value is a string, otherwise false.
isSymbol
Determines whether a given value is of type symbol.
Type:
function isSymbol(value?: unknown): value is symbol;Example:
import { isSymbol } from '@hemjs/notions';
isSymbol(Symbol('hello'));
// => true
isSymbol('hello');
// => false
isSymbol(10);
// => falseParameters:
value: The value to be checked. Can be any data type.
Returns:
true if value is a symbol, otherwise false.
isUndefined
Determines whether a given value is undefined.
Type:
function isUndefined(value?: unknown): value is undefined;Example:
import { isUndefined } from '@hemjs/notions';
isUndefined(undefined);
// => true
isUndefined(null);
// => false
isUndefined(0);
// => falseParameters:
value: The value to be checked. Can be any data type.
Returns:
true if value is undefined, otherwise false.
Object
omit
Creates a new object with specific properties omitted from a source object.
Type:
function omit<T extends Record<string, unknown>, K extends keyof T>(
obj: T,
exclusions: readonly K[],
): Omit<T, K>;Example:
import { omit } from '@hemjs/notions';
const person = { name: 'Alice', age: 30, city: 'Nairobi' };
const publicInfo = omit(person, ['age']);
console.log(publicInfo); // Output: { name: 'Alice', city: 'Nairobi' }Parameters:
obj: The source object from which properties will be copied.exclusions: An array of property keys to exclude from the new object.
Returns:
A new object containing all properties from obj except those listed in exclusions.
pick
Creates a new object containing only the specified properties from a source object.
Type:
function pick<T extends Record<string, unknown>, K extends keyof T>(
obj: T,
inclusions: readonly K[],
): Pick<T, K>;Example:
import { pick } from '@hemjs/notions';
const person = { name: 'Alice', age: 30, city: 'Nairobi' };
const nameAndAge = pick(person, ['name', 'age']);
console.log(nameAndAge); // Output: { name: 'Alice', age: 30 }Parameters:
obj: The source object from which properties will be copied.inclusions: An array of property keys to include in the new object.
Returns:
A new object containing only the properties listed in inclusions from obj.
License
This project is licensed under the MIT license.
See LICENSE for more information.
