1.0.3 • Published 10 months ago
@txjs/bool v1.0.3
@txjs/bool
用于验证和判断数据类型的实用函数
使用 npm
npm i @txjs/bool使用 pnpm
pnpm add @txjs/bool使用 yarn
yarn add @txjs/bool导入方式
import { is, isNil } from '@txjs/bool'
// 或
import { isNil } from '@txjs/bool/dist/isNil'函数列表
- toString
- is
- isArray
- isBoolean
- isFunction
- isAsyncFunction
- isInteger
- isNil
- isNull
- isNumber
- isNumeric
- isPhone
- isNonVirtualPhone
- isPlainObject
- isPromise
- isString
- isSymbol
- isUndefined
- isHttpUrl
- isAbsoluteUrl
- isEqual
- isEmail
- isLandline
- containsHTML
toString
将值转为字符串。
function toString(value: unknown): string;示例:
toString(123); // "123"
toString(true); // "true"
toString([1, 2, 3]); // "1,2,3"is
验证 value 值类型
function is(value: unknown, type: string): value is T;示例:
is(123, 'number'); // true
is({}, 'object'); // true
is([], 'array'); // trueisArray
检查 value 是否是 Array 类型
function isArray(value: T): value is T extends Array ? T : never;示例:
isArray([1, 2, 3]); // true
isArray('abc'); // falseisBoolean
检查 value 是否是 boolean 类型
function isBoolean(value: unknown): value is boolean;示例:
isBoolean(true); // true
isBoolean('true'); // falseisFunction
检查 value 是否是 function 类型
function isFunction(value: unknown): value is (...args: any[]) => any;示例:
isFunction(() => {}); // true
isFunction('string'); // falseisAsyncFunction
检查 value 是否是 async function 类型
function isAsyncFunction(value: unknown): value is (...args: any[]) => Promise;示例:
isAsyncFunction(async () => {}); // true
isAsyncFunction(() => {}); // falseisInteger
检查 value 是否是整数,包含 0
function isInteger(value: unknown): value is number;示例:
isInteger(10); // true
isInteger(3.14); // falseisNil
检查 value 是否是 undefined 或 null 类型
function isNil(value: unknown): value is null | undefined;示例:
isNil(null); // true
isNil(undefined); // trueisNull
检查 value 是否是 null 类型
function isNull(value: unknown): value is null;示例:
isNull(null); // true
isNull(undefined); // falseisNumber
检查 value 是否是 number 类型,值不能为 NaN
function isNumber(value: unknown): value is number;示例:
isNumber(3); // true
isNumber('3'); // falseisNumeric
检查 value 是否是 number 类型,支持字符串校验
function isNumeric(value: unknown): value is number | string;示例:
isNumeric(3); // true
isNumeric('3'); // true
isNumeric('abc'); // falseisPhone
检查 value 是否是手机号码(包含虚拟号段)
function isPhone(value: unknown): value is string;示例:
isPhone('13566667777'); // true
isPhone('17012345678'); // falseisNonVirtualPhone
检查 value 是否为手机号码(不包含虚拟号段)
function isNonVirtualPhone(value: unknown): value is string;示例:
isNonVirtualPhone('13987654321'); // true
isNonVirtualPhone('17712345678'); // falseisPlainObject
检查 value 是否是 object 类型,不包含 null 类型
function isPlainObject(value: T): value is T extends Record ? T : never;示例:
isPlainObject({}); // true
isPlainObject(null); // falseisPromise
检查 value 是否是 promise 类型
function isPromise(value: T): value is T extends Promise ? T : never;示例:
isPromise(Promise.resolve()); // true
isPromise({}); // falseisString
检查 value 是否是 string 类型
function isString(value: unknown): value is string;示例:
isString('hello'); // true
isString(123); // falseisSymbol
检查 value 是否是 symbol 类型
function isSymbol(value: unknown): value is symbol;示例:
isSymbol(Symbol('symbol')); // true
isSymbol('symbol'); // falseisUndefined
检查 value 是否是 undefined 类型
function isUndefined(value: unknown): value is undefined;示例:
isUndefined(undefined); // true
isUndefined(null); // falseisHttpUrl
检查 value 是否是以 http 或 https 开头的url
function isHttpUrl(value: unknown): value is string;示例:
isHttpUrl('http://example.com'); // true
isHttpUrl('ftp://example.com'); // falseisAbsoluteUrl
检查 value 是否是绝对的 URL
function isAbsoluteUrl(value: unknown): boolean;示例:
isAbsoluteUrl('http://example.com'); // true
isAbsoluteUrl('/example'); // falseisEqual
检查两个值是否相等
function isEqual(value: any, other: any, seen?: WeakMap): boolean;示例:
isEqual({a: 1}, {a: 1}); // true
isEqual([1, 2], [1, 2]); // true
isEqual(1, '1'); // falseisEmail
检查 value 是否是 email 格式
export declare function isEmail(value: unknown): boolean;示例:
isEmail('example@gmail.com'); // true
isEmail('example.com'); // falseisLandline
检查 value 是否是座机号码
export declare function isLandline(value: unknown): value is string;示例:
isLandline('13215666'); // false
isLandline('0592-5966633'); // true
isLandline('0592-5966633-123'); // truecontainsHTML
检查 value 是否是包含 HTML
export declare function containsHTML(value: unknown): value is string;示例:
containsHTML('<div>Test</div>'); // true
containsHTML('<img src='image.jpg' />'); // true
containsHTML('</>'); // false
containsHTML('1 < 2 && 3 > 4'); // false