npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@curong/types

v0.5.0

Published

`@curong/types` 是一个功能全面的检测 `JavaScript` 类型的依赖,可以很方便的检测变量的类型。它们会接收一个参数并返回一个 `boolean` 值。有关详细的用法,请查看 `文档注释`。

Downloads

21

Readme

@curong/types

@curong/types 是一个功能全面的检测 JavaScript 类型的依赖,可以很方便的检测变量的类型。它们会接收一个参数并返回一个 boolean 值。有关详细的用法,请查看 文档注释

@curong/types 主要包含以下的方法:

  • getTag: 获取原型上的类型标记
  • isAnyError: 是不是一个任意的 Error 对象
  • isArguments: 是不是函数的参数
  • isArray: 是不是一个数组
  • isArrayBuffer: 是不是一个 ArrayBuffer
  • isArrayBufferView: 是不是一个 ArrayBufferView
  • isArrayHave: 是不是一个长度大于 0 的数组
  • isArrayIndex: 是不是一个数组的下标索引,它是一个大于或等于 0 并且小于或等于数组的最大长度的整数
  • isArrayLike: 是不是一个类数组 (不包含数组)
  • isArrayLikeHave: 是不是一个长度大于 0 的类数组 (不包含数组)
  • isAsyncFunction: 是不是一个异步函数
  • isAsyncFunctionHave: 是不是一个参数个数大于 0 的异步函数
  • isAsyncIterable: 是不是一个异步可迭代的对象
  • isBigInt: 是不是一个 bigInt (大数) 或被包装后的 BigInt 对象
  • isBigInt64Array: 是不是一个 BigInt64Array
  • isBigIntHave: 是不是一个大于 0nBigInt (大数)
  • isBigIntObject: 是不是一个被包装后的 BigInt 对象,即 Object(0n)
  • isBigIntPrimitive: 是不是一个基本的大数,即 bigint
  • isBigUint64Array: 是不是一个 BigUint64Array
  • isBlob: 是不是一个 Blob
  • isBoolean: 是不是一个布尔值或被包装后的布尔值对象
  • isBooleanObject: 是不是一个被包装后的布尔值对象,即 new Boolean
  • isBooleanPrimitive: 是不是一个基本的布尔值,即 boolean
  • isBuffer: 是不是一个 Buffer
  • isBufferHave: 是不是一个长度大于 0Buffer
  • isClass: 是不是一个类
  • isDataView: 是不是一个 DataView
  • isDate: 是不是一个有效的 Date
  • isDouble: 是不是一个浮点数
  • isDuplex: 是不是一个 Duplex
  • isElement: 是不是一个 Element
  • isEqual: 简单 的判断多个的值是否相等
  • isError: 是不是一个 Error 对象
  • isEvalError: 是不是一个 EvalError 对象
  • isEvent: 是不是一个 Event 事件
  • isFalse: 是不是 false
  • isFalsy: 是不是一个虚值 (强制转换为 Boolean 后为 false 的值)
  • isFile: 是不是一个 File 对象
  • isFileReader: 是不是一个 FileReader 对象
  • isFloat32Array: 是不是一个 Float32Array,每一项的值为 1.2×10-38 - 3.4×1038
  • isFloat64Array: 是不是一个 Float64Array,每一项的值为 5.0×10-324 - 1.8×10308
  • isFormData: 是不是一个 isFormData
  • isFunction: 是不是一个函数(包含同步函数、异步函数和 Generator 函数)
  • isFunctionHave: 是不是一个参数个数大于 0 的函数
  • isGenerator: 是不是一个 Generator
  • isGeneratorFunction: 是不是一个 Generator 函数
  • isInfinity: 是不是一个 Infinity,即超出 1.7976931348623157E+103088 的数值
  • isInt: 是不是一个整数
  • isInt16Array: 是不是一个 Int8Array,每一项的值为 -128 - 127
  • isInt32Array: 是不是一个 Int16Array,每一项的值为 -32768 - 32767
  • isInt8Array: 是不是一个 Int32Array,每一项的值为 -2147483648 - 2147483647
  • isIntHave: 是不是一个大于 0 的整数,即无符号整数
  • isIntSafe: 是不是一个安全的整数
  • isIterable: 是不是一个同步或异步的可迭代的对象
  • isIterator: 是不是一个 Iterator
  • isLengthy: 是不是一个具有 length 属性的类型,其 length 的值是一个大于或等于 0 的整数
  • isLengthyHave: 是不是一个具有 length 属性的类型,其 length 的值是一个大于 0 的整数
  • isMap: 是不是一个 Map
  • isMapHave: 是不是一个长度大于 0Map
  • isNaN: 是不是一个 NaN
  • isNegativeInfinity: 是不是一个 -Infinity,即小于 -1.7976931348623157E+103088 的数值
  • isNodeList: 是不是一个 NodeList
  • isNotEqual: 简单 的判断多个的值是否不相等
  • isNotZero: 不是 0
  • isNull: 是不是 null
  • isNullOrUndefined: 是不是 undefined 或者 null
  • isNumber: 是不是一个数字或被包装后的数字对象
  • isNumberHave: 是不是一个大于 0 并且小于或等于 Number.MAX_VALUE 的数字
  • isNumberObject: 是不是一个被包装后的数字对象,即 new Number()
  • isNumberPrimitive: 是不是一个基本的数字,即 number
  • isNumberSafe: 是不是一个安全的数字,该数字不能为 NaN ,并且介于 MAX_VALUE-MAX_VALUE 之间
  • isNumeric: 是不是一个不是 NaN 的数字或数字字符串
  • isObject: 是不是一个 [object Object] 的对象
  • isObjectHave: 是不是一个属性个数大于 0 的对象
  • isOwnProperty: 确定一个值上是否具有指定名称的私有属性
  • isPlainObject: 是不是一个普通对象,即 {},该对象的原型指向 Object.prototype
  • isPlainObjectHave: 是不是一个属性个数大于 0 的普通对象,即 {}
  • isPrimitive: 是不是一个基本类型的值
  • isPromise: 是不是一个 Promise
  • isProperty: 确定一个值上是否具有指定名称的属性,该属性可以是私有属性,也可以是原型上的属性
  • isPropertyDescriptor: 是不是一个属性描述器
  • isPropertyKey: 是不是一个可以作为属性的值
  • isRangeError: 是不是一个 RangeError 对象
  • isReactElement: 是不是一个 React 元素
  • isReadable: 是不是一个 Readable
  • isReferenceError: 是不是一个 ReferenceError 对象
  • isRegExp: 是不是一个正则表达式
  • isSameError: 是不是一个 namemessage 相同的 Error 对象
  • isSet: 是不是一个 Set
  • isSetHave: 是不是一个长度大于 0Set
  • isSizey: 是不是一个具有 size 属性的类型,其 size 的值是一个大于或等于 0 的整数
  • isSizeyHave: 是不是一个具有 size 属性的类型,其 size 的值是一个大于 0 的整数
  • isStream: 是不是一个 Stream
  • isString: 是不是一个字符串或被包装后的字符串对象
  • isStringHave: 是不是一个长度大于 0 的字符串
  • isStringObject: 是不是一个被包装后的字符串对象,即 new String()
  • isStringPrimitive: 是不是一个基本的字符串,即 string
  • isStringTrim: 是不是一个经过 trim 后长度大于 0 的字符串
  • isSymbol: 是不是一个 symbol 或被包装后的 Symbol 对象
  • isSymbolObject: 是不是一个被包装后的 Symbol 对象,即 Object(Symbol())
  • isSyncFunction: 是不是一个同步函数
  • isSyncIterable: 是不是一个同步可迭代的对象
  • isSyntaxError: 是不是一个 SyntaxError 对象
  • isTextNode: 是不是一个 TextNode
  • isTransform: 是不是一个 Transform
  • isTrue: 是不是 true
  • isTruthy: 是不是一个非虚值 (强制转换为 Boolean 后为 true 的值)
  • isTypeError: 是不是一个 TypeError 对象
  • isTypeofObject: 使用 typeof 判断是不是一个不是 null 的任意对象
  • isUDouble: 是不是一个无符号浮点数,即大于 0 的浮点数
  • isUint: 是不是一个无符号整数,即大于或等于 0 的整数
  • isUint16Array: 是不是一个 Uint16Array,每一项的值为 0 - 65535
  • isUint32Array: 是不是一个 Uint32Array,每一项的值为 0 - 4294967295
  • isUint8Array: 是不是一个 Uint8Array,每一项的值为 0 - 255
  • isUint8ClampedArray: 是不是一个 Uint8ClampedArray,每一项的值为 0 - 255
  • isUintHave: 是不是一个大于 0 的无符号整数
  • isUintSafe: 是不是一个安全的无符号整数
  • isUintSafeHave: 是不是一个大于 0 的安全的无符号整数
  • isUndefined: 是不是 undefined
  • isURL: 是不是一个 URL
  • isUrlSearchParams: 是不是一个 URLSearchParams
  • isVarName: 是不是可以把值当做 JavaScript 的变量名
  • isWeakMap: 是不是一个 WeakMap
  • isWeakSet: 是不是一个 WeakSet
  • isWindow: 是不是 Window 对象
  • isWritable: 是不是一个 Writable
  • isZero: 是不是 0
  • MAX_ARRAY_LENGTH: 获取数组最大索引下标的数字。最大为 232 次方减一,即 4294967295

以下函数用于判断执行环境:

  • isBrowser: 当前的执行环境是不是浏览器
  • isDeno: 当前的执行环境是不是 Deno
  • isNodejs: 当前的执行环境是不是 Node.js
  • isWebWorker: 当前的执行环境是不是 Web Worker

一些 TypeScript 类型:

  • IsAny: 是不是一个 any 类型的值
  • IsNever: 是不是一个 never 类型的值
  • IsUnknown: 是不是一个 unknown 类型的值
  • IsNullable: 是不是一个 nullundefined 类型的值