Skip to content

Module: utils/src/modules/__indexLanguage

Functions

ifNil

ifNil<V, TDefault>(value, defaultValue, valueTo?): V | TDefault

如果给定值是null || undefined,返回def,否则返回value,可以通过传入回调函数修改value最终返回的值。

Example

ts
ifNil(undefined, defaultValue)
=> defaultValue

ifNil(value, defaultValue)
=> value

ifNil(10, 'defaultValue', (val) => val + 1)
=> 11
ifNil(undefined, defaultValue)
=> defaultValue

ifNil(value, defaultValue)
=> value

ifNil(10, 'defaultValue', (val) => val + 1)
=> 11

Type parameters

Name
V
TDefault

Parameters

NameTypeDescription
valueV给定值
defaultValueTDefault默认值
valueTo?Func<V>value 处理回调

Returns

V | TDefault


ifNilorBlank

ifNilorBlank<V, TDefault>(value, defaultValue, valueTo?): V | TDefault

如果给定值是null || undefined || '',返回defaultValue,否则返回value,可以通过传入回调函数修改value最终返回的值。

Example

ts
ifNilorBlank('', defaultValue)
=> defaultValue

ifNilorBlank(value, defaultValue)
=> value

ifNilorBlank(10, 'defaultValue', (val) => val + 1)
=> 11
ifNilorBlank('', defaultValue)
=> defaultValue

ifNilorBlank(value, defaultValue)
=> value

ifNilorBlank(10, 'defaultValue', (val) => val + 1)
=> 11

Type parameters

Name
V
TDefault

Parameters

NameTypeDescription
valueV给定值
defaultValueTDefault默认值
valueTo?Func<V>value 处理回调

Returns

V | TDefault


isArguments

isArguments(value): value is IArguments

返回一个布尔值,判断给定值是否为arguments对象。

Example

ts
(function(){ return isArguments(arguments) })(1, 2, 3)
=> true

isArguments([1, 2, 3])
=> false
(function(){ return isArguments(arguments) })(1, 2, 3)
=> true

isArguments([1, 2, 3])
=> false

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is IArguments


isArray

isArray(value): value is unknown[]

返回一个布尔值,判断给定值是否为数组。

Example

ts
(function(){ return isArray(arguments); })()
=> false

isArray([1, 2, 3])
=> true
(function(){ return isArray(arguments); })()
=> false

isArray([1, 2, 3])
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is unknown[]


isArrayBuffer

isArrayBuffer(value): value is ArrayBuffer

返回一个布尔值,判断给定值是否为ArrayBuffer对象。

Example

ts
isArrayBuffer(new ArrayBuffer(4))
=> true
isArrayBuffer(new ArrayBuffer(4))
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is ArrayBuffer


isArrayLike

isArrayLike(value): value is List<any>

返回一个布尔值,判断给定值是否为类数组(存在有效length且不为null || function)。

Example

ts
isArrayLike([])
=> true

isArrayLike(()=>{})
=> false
isArrayLike([])
=> true

isArrayLike(()=>{})
=> false

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is List<any>


isBlank

isBlank(value): value is string

返回一个布尔值,判断给定值是否为空字符串。

Example

ts
isDataView('')
=> true
isDataView('')
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is string


isBlob

isBlob(value): value is Blob

返回一个布尔值,判断给定值是否为Blob对象。

Example

ts
isBlob(new Blob())
=> true
isBlob(new Blob())
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is Blob


isBoolean

isBoolean(value): value is boolean

返回一个布尔值,判断给定值是否为布尔值。

Example

ts
isBoolean(false)
=> true

isBoolean(Boolean())
=> true

isBoolean(null)
=> false
isBoolean(false)
=> true

isBoolean(Boolean())
=> true

isBoolean(null)
=> false

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is boolean


isDataView

isDataView(value): value is DataView

返回一个布尔值,判断给定值是否为DataView对象。

Example

ts
isDataView(new DataView(new ArrayBuffer(4)))
=> true
isDataView(new DataView(new ArrayBuffer(4)))
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is DataView


isDate

isDate(value): value is Date

返回一个布尔值,判断给定值是否为Date对象。

Example

ts
isDate(new Date())
=> true
isDate(new Date())
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is Date


isElement

isElement(value): value is HTMLElement

返回一个布尔值,判断给定值是否为DOM对象。

Example

ts
isElement(document.querySelector('div'))
=> true
isElement(document.querySelector('div'))
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is HTMLElement


isEmpty

isEmpty(value): boolean

返回一个布尔值,判断给定值是否不包含任何值(没有可枚举的属性)。 对于字符串和类数组arrayLike对象,如果length属性为0,那么isEmpty检查返回true。 对于MapSet对象,如果size属性为0,那么isEmpty检查返回true

Example

ts
isEmpty([1, 2, 3])
=> false

isEmpty({})
=> true
isEmpty([1, 2, 3])
=> false

isEmpty({})
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

boolean


isEqual

isEqual<V1, V2>(a, b): boolean

返回一个布尔值,判断两个对象是否相等(优化深度比较)。

Example

ts
const stooge = {name: 'moe', luckyNumbers: [13, 27, 34]}
const clone  = {name: 'moe', luckyNumbers: [13, 27, 34]}
stooge == clone
=> false

isEqual(stooge, clone)
=> true
const stooge = {name: 'moe', luckyNumbers: [13, 27, 34]}
const clone  = {name: 'moe', luckyNumbers: [13, 27, 34]}
stooge == clone
=> false

isEqual(stooge, clone)
=> true

Type parameters

Name
V1
V2

Parameters

NameTypeDescription
aV1给定值
bV2给定值

Returns

boolean


isError

isError(value): value is Error

返回一个布尔值,判断给定值是否继承自Error对象。

Example

ts
try {
  throw new TypeError("Example")
} catch (o_O) {
  isError(o_O)
}
=> true
try {
  throw new TypeError("Example")
} catch (o_O) {
  isError(o_O)
}
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is Error


isFinite

isFinite(value): value is number

返回一个布尔值,判断给定值是否为有限数值。

Example

ts
isFinite(-101)
=> true

isFinite(-Infinity)
=> false
isFinite(-101)
=> true

isFinite(-Infinity)
=> false

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is number


isFunction

isFunction(value): value is Func<any>

返回一个布尔值,判断给定值是否为函数。

Example

ts
isFunction(alert)
=> true
isFunction(alert)
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is Func<any>


isLength

isLength(value): value is number

返回一个布尔值,判断给定值是否为length0 ~ 9007199254740991之间的整数)。

Example

ts
isLength(1)
=> true

isLength(1.2)
=> false

isLength(9007199254740992)
=> false
isLength(1)
=> true

isLength(1.2)
=> false

isLength(9007199254740992)
=> false

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is number


isMap

isMap(value): value is Map<Dictionary<any>, unknown>

返回一个布尔值,判断给定值是否为Map对象。

Example

ts
isMap(new Map())
=> true
isMap(new Map())
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is Map<Dictionary<any>, unknown>


isMatch

isMatch(object, properties): boolean

返回一个布尔值,判断给定对象是否包含properties键-值对。

Example

ts
var stooge = {name: 'moe', age: 32}
isMatch(stooge, {age: 32})
=> true
var stooge = {name: 'moe', age: 32}
isMatch(stooge, {age: 32})
=> true

Parameters

NameTypeDescription
objectunknown给定对象
propertiesDictionary<any>谓语对象

Returns

boolean


isNaN

isNaN(value): value is number

返回一个布尔值,判断给定值是否为NaN,此方法判断undefined不为NaN。 这和原生的isNaN函数不一样,如果给定值是undefined,原生的isNaN函数也会返回true

Example

ts
isNaN(NaN)
=> true

isNaN(undefined)
=> true

isNaN(undefined)
=> false
isNaN(NaN)
=> true

isNaN(undefined)
=> true

isNaN(undefined)
=> false

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is number


isNil

isNil(value): value is undefined | null

返回一个布尔值,判断给定值是否为null || undefined

Example

ts
isNil(null)
=> true

isNil(undefined)
=> true
isNil(null)
=> true

isNil(undefined)
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is undefined | null


isNilorBlank

isNilorBlank(value): value is undefined | null | string

返回一个布尔值,判断给定值是否为null || undefined || ''

Example

ts
isNilorBlank(null)
=> true

isNilorBlank(undefined)
=> true

isNilorBlank('')
=> true
isNilorBlank(null)
=> true

isNilorBlank(undefined)
=> true

isNilorBlank('')
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is undefined | null | string


isNull

isNull(value): value is null

返回一个布尔值,判断给定值是否为null

Example

ts
isNull(null)
=> true
isNull(null)
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is null


isNumber

isNumber(value): value is number

返回一个布尔值,判断给定值是否为数值(包括NaN)。

Example

ts
isNumber(8.4 * 5)
=> true
isNumber(8.4 * 5)
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is number


isObject

isObject(value): value is Dictionary<any>

返回一个布尔值,判断给定值是否为对象。此方法判断null不为对象。

Example

ts
isObject({})
=> true

isObject(null)
=> false
isObject({})
=> true

isObject(null)
=> false

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is Dictionary<any>


isPrototype

isPrototype(value): value is object

返回一个布尔值,判断给定值是否为原型对象(拥有一个非空原型的隐式引用)。

Example

ts
function custom() {}
isPrototype(custom.prototype)
=> true
function custom() {}
isPrototype(custom.prototype)
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is object


isRegExp

isRegExp(value): value is RegExp

返回一个布尔值,判断给定值是否为RegExp对象。

Example

ts
isRegExp(/moe/)
=> true
isRegExp(/moe/)
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is RegExp


isSet

isSet(value): value is Set<unknown>

返回一个布尔值,判断给定值是否为Set(任何类型的唯一值集合)对象。

Example

ts
isSet(new Set())
=> true
isSet(new Set())
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is Set<unknown>


isString

isString(value): value is string

返回一个布尔值,判断给定值是否为字符串。

Example

ts
isString("moe")
=> true
isString("moe")
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is string


isSymbol

isSymbol(value): value is symbol

返回一个布尔值,判断给定值是否为Symbol

Example

ts
isSymbol(Symbol())
=> true
isSymbol(Symbol())
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is symbol


isTypedArray

isTypedArray(value): value is TypedArray

返回一个布尔值,判断给定值是否为TypedArray对象。

Example

ts
isTypedArray(new Int8Array(8))
=> true
isTypedArray(new Int8Array(8))
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is TypedArray


isUndefined

isUndefined(value): value is undefined

返回一个布尔值,判断给定值是否为undefined

Example

ts
isUndefined(undefined)
=> true
isUndefined(undefined)
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is undefined


isWeakMap

isWeakMap(value): value is WeakMap<Dictionary<any>, unknown>

返回一个布尔值,判断给定值是否为WeakMap对象。

Example

ts
isWeakMap(new WeakMap())
=> true
isWeakMap(new WeakMap())
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is WeakMap<Dictionary<any>, unknown>


isWeakSet

isWeakSet(value): value is WeakSet<Dictionary<any>>

返回一个布尔值,判断给定值是否为WeakSet(弱保持对象值集合)对象。

Example

ts
isWeakSet(new WeakSet())
=> true
isWeakSet(new WeakSet())
=> true

Parameters

NameTypeDescription
valueunknown给定值

Returns

value is WeakSet<Dictionary<any>>


toArray

toArray<V>(list): TypeOfCollection<V>[]

返回一个数组,数组由给定值转换而成,在转换arguments对象时非常有用。

Example

ts
(function(){ return toArray(arguments).slice(1) })(1, 2, 3, 4)
=> [2, 3, 4]
(function(){ return toArray(arguments).slice(1) })(1, 2, 3, 4)
=> [2, 3, 4]

Type parameters

NameType
Vextends Collection

Parameters

NameTypeDescription
listV给定值

Returns

TypeOfCollection<V>[]


toParams

toParams<V>(list): string

返回一个请求参数字符串(key=value&),字符串由给定值转换而成。

Example

ts
toParams({ id: 1, sex: 1 })
=> 'id=1&sex=1'

toParams([[id, 1], [sex: 1]])
=> 'id=1&sex=1'
toParams({ id: 1, sex: 1 })
=> 'id=1&sex=1'

toParams([[id, 1], [sex: 1]])
=> 'id=1&sex=1'

Type parameters

Name
V

Parameters

NameTypeDescription
listV给定值

Returns

string


toPath

toPath(path): string[]

返回一个数组,数组由path转换后组成。

Example

ts
toPath([])
=> []

toPath('a.b')
=> ['a', 'b']

toPath( ... )
=> [ ... ]
toPath([])
=> []

toPath('a.b')
=> ['a', 'b']

toPath( ... )
=> [ ... ]

Parameters

NameTypeDescription
pathunknown给定路径值

Returns

string[]