# 断言
# 说明
断言包含了一些常用的判断方法,导出模块名为assert
- 导入模块
import { assert } from 'gx-instant'
# 方法
# truth
说明:判断是否为真值
- 参数
val: any
数据strict:boolean
可选,是否是严格模式,严格模式下,采用===进行对比,默认falseself:boolean
可选,判断是否自身类型为真值,当val为数组时,self为false,会判断集合内每个数据是否为真值;self为true则返回val本身的判断结果,默认true
- 返回:
boolean
判断结果
示例
truth(1) //true
truth(1,true) //false
truth([1,0,2]) //会判断集合每一项是否为真值
truth([1,0,2],false,true) //会判断值[1,0,2]是否为真值
# falsity
说明:判断是否为假值
- 参数
val: any
数据strict:boolean
可选,是否是严格模式,严格模式下,采用===进行对比,默认falseself:boolean
可选,判断是否自身类型为假值,当val为数组时,self为false,会判断集合内每个数据是否为假值;self为true则返回val本身的判断结果,默认true
- 返回:
boolean
判断结果
示例
falsity(1) //true
falsity(1,true) //false
falsity([1,0,2]) //会判断集合每一项是否为真值
falsity([1,0,2],false,true) //会判断值[1,0,2]是否为真值
# isNumber
说明:判断数据是否为number类型
- 参数
val: any
数据self:boolean
可选,判断是否自身类型为数值,当val为数组时,self为false,会判断集合内每个数据是否为数值;self为true则返回val本身的判断结果,默认true
- 返回:
boolean
判断结果
示例
isNumber(1) //true
isNumber([1,2]) //false
isNumber([1,2],false) //true
# isString
说明:判断数据是否为string类型
- 参数
val: any
数据self:boolean
可选,判断是否自身类型为字符串,当val为数组时,self为false,会判断集合内每个数据是否为string类型;self为true则返回val本身的判断结果,默认true
- 返回:
boolean
判断结果
示例
isString('string') //true
isString(['string','string']) //false
isString(['string','string'],false) //true
# isBoolean
说明:判断数据是否为boolean类型
- 参数
val: any
数据self:boolean
可选,判断是否自身类型为布尔值,当val为数组时,self为false,会判断集合内每个数据是否为布尔值;self为true则返回val本身的判断结果,默认true
- 返回:
boolean
判断结果
示例
isBoolean(true) //true
isBoolean([true,true]) //false
isBoolean([true,false],false) //true
# isArray
说明:判断数据是否为array类型
- 参数
val: any
数据self:boolean
可选,判断是否自身类型为数组类型,当val为数组时,self为false,会判断集合内每个数据是否为数组类型;self为true则返回val本身的判断结果,默认true
- 返回:
boolean
判断结果
示例
isArray([]) //true
isArray([[1],null]) //true [[1],null]本身是数组
isArray([[1],null],false) //false null不是数组
# isMap
说明:判断数据是否为map类型
- 参数
val: any
数据self:boolean
可选,判断是否自身类型为map类型,当val为数组时,self为false,会判断集合内每个数据是否为map类型;self为true则返回val本身的判断结果,默认true
- 返回:
boolean | Array<boolean>
判断结果
# isObject
说明:判断数据是否为Object类型
- 参数
val: any
数据self:boolean
判断是否自身类型为Object类型,可选,当val为数组时,self为false,会判断集合内每个数据是否为Object类型;self为true则返回val本身的判断结果,默认true
- 返回:
boolean | Array<boolean>
判断结果
# isFunction
说明:判断数据是否为Function类型
版本:0.0.7
- 参数
val: any
数据self:boolean
判断是否自身为Function类型,可选,当val为数组时,self为false,会判断集合内每个数据是否为Function类型;self为true则返回val本身的判断结果
- 返回:
boolean | Array<boolean>
判断结果
# isFile
说明:判断是否是File类型
版本:1.1.1
- 参数
obj: any
判断数据
- 返回:
boolean
判断结果
# isElement
说明:判断数据是否为页面元素(DOM,继承自HTMLElement)
- 参数
val: any
数据
- 返回:
boolean
判断结果
# isDate
说明:判断是否为日期类型
- 参数
obj: any
数据
- 返回:
boolean
判断结果
# is
说明:通用判断方法,判断是否Array,boolean,string,number,Map,Object,Function类型
- 参数
val: any
数据type: string
判断数据是否为某类型,如number,array等self:boolean
可选,判断是否自身类型为某类型,当val为数组时,self为false,会判断集合内每个数据是否为type指定的类型;self为true则返回val本身的判断结果,默认true
- 返回:
boolean
判断结果
# isImg
说明:判断是否为图片
版本:0.0.7
- 参数
file: File | string | Array<File,string>
文件或文件名列表allowType: string | Array<string>
判断是否为图片的格式断言列表,可选,默认['JPG','JPEG','PNG','SVG','GIF']
,注意:大小写不敏感
- 返回:
boolean
判断结果
示例
isImg('test.jpg') //true,因为默认的img断言列表中存在JPG(大小写不敏感)
isImg('test.jpg',['PNG']) //false,因为jpg格式不包含在被允许的格式范围PNG中
isImg(['test.jpg','test2.png',File]) //支持File和string混传,支持批量判断
isImg(['test.jpg','test2.png'],'PNG') //断言列表单个时可不指定为数组,也可以写成isImg(['test.jpg','test2.png'],['PNG'])
isImg(['test.jpg','test2.png'],['PNG','JPG']) //可指定多个断言列表
# isVideo
说明:判断是否为视频
版本:0.0.7
- 参数
file: File | string | Array<File,string>
文件或文件名列表allowType: string | Array<string>
判断是否为视频的格式断言列表,可选,默认['MP4','MOV','AVI','FLV','3GP']
,注意:大小写不敏感
- 返回:
boolean
判断结果
提示:调用方式等同isImg
# isAudio
说明:判断是否为音频
版本:0.0.7
- 参数
file: File | string | Array<File,string>
文件或文件名列表allowType: string | Array<string>
判断是否为音频的格式断言列表,可选,默认['MP3','MPEG','OGG','WMA']
,注意:大小写不敏感
- 返回:
boolean
判断结果
提示:调用方式等同isImg
# isDoc
说明:判断是否为Word文档
版本:0.0.7
- 参数
file: File | string | Array<File,string>
文件或文件名列表allowType: string | Array<string>
判断是否为word文档的格式断言列表,可选,默认['DOC','DOCX']
,注意:大小写不敏感
- 返回:
boolean
判断结果
提示:调用方式等同isImg
# isExcel
说明:判断是否为Excel表格
版本:0.0.7
- 参数
file: File | string | Array<File,string>
文件或文件名列表allowType: string | Array<string>
判断是否为表格的格式断言列表,可选,默认['XLS','XLSX','XLSM','XLSB','XLTX','XLTM','CSV']
,注意:大小写不敏感
- 返回:
boolean
判断结果
提示:调用方式等同isImg
# isPDF
说明:判断是否为PDF
版本:0.0.7
- 参数
file: File | string | Array<File,string>
文件或文件名列表allowType: string | Array<string>
判断是否为PDF的格式断言列表,可选,默认['PDF']
,注意:大小写不敏感
- 返回:
boolean
判断结果
提示:调用方式等同isImg
# isZIP
说明:判断是否为压缩文件
版本:0.0.7
- 参数
file: File | string | Array<File,string>
文件或文件名列表allowType: string | Array<string>
判断是否为压缩文件的格式断言列表,可选,默认['ZIP','RAR','7Z']
,注意:大小写不敏感
- 返回:
boolean
判断结果
提示:调用方式等同isImg
# isType
说明:判断是否属于某类型
版本:0.0.7
- 参数
val:any | Array<any>
需要判断的值或者值列表type: string
目标类型
- 返回:
boolean
判断结果,如果val是数组,则判断数组内的每一项是否均符合type指定的类型
提示:内部使用typeof
进行判断
# isInstance
说明:判断是否属于某实例
版本:0.0.7
- 参数
val:any | Array<any>
需要判断的值或者值列表type: Object
目标类型,引用数据类型
- 返回:
boolean
判断结果,如果val是数组,则判断数组内的每一项是否均为type的实例
提示:内部使用instanceof
进行判断
# equals
说明:比较一组数据是否相等
- 参数
vales: any
可以是数组,也可以是多个参数strict: boolean
可选,判断相等时是否严格比较,默认false(引用类型数据会先序列化再比较)
- 返回:
boolean
判断结果
示例
equals([1,1,true],false) //true
equals([1,1,true],true) //false
equals(1,2,3,false) //false
//等同于
equals(false,1,2,3) //false
//等同于
equals([1,2,3],false)
# equalsObj
说明:比较对象是否相等
- 参数
obj1: Object
比较对象obj2: Object
比较对象strict:boolean
可选,是否严格比较,严格比较下,key顺序不一致也不会视为相等,对比方式会先将对象序列化,默认false
- 返回:
boolean
判断结果
示例
equalsObj({name:'gx',age:2},{age:2,name:'gx'}) //true(key顺序可以不同)
equalsObj({name:'gx',age:2},{age:2,name:'gx'},true) //false(key顺序不同视为不同)
# canNumber
说明:判断是否能转为数字
- 参数
num: any | Array<any>
要判断的数据,当数据为集合时,会判断集合中的每个数据是否都能转为数字
- 返回:
boolean
判断结果
# canDate
说明:判断数据是否能转成日期类型数据
- 参数
num: any | Array<any>
要判断的数据,当数据为集合时,会判断集合中的每个数据是否都能转为Date类型
- 返回:
boolean
判断结果