# 断言

# 说明

断言包含了一些常用的判断方法,导出模块名为assert

  • 导入模块
import { assert } from 'gx-instant'

# 方法

# truth

说明:判断是否为真值

  • 参数
    • val: any 数据
    • strict:boolean 可选,是否是严格模式,严格模式下,采用===进行对比,默认false
    • self: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 可选,是否是严格模式,严格模式下,采用===进行对比,默认false
    • self: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 判断结果