be-type
be-type is based on ECMAScript2015+ proxy feature
Usage
yarn add be-typenpm install --save be-type
JavaScript:
;be; // true
Custom type check:
//be.js; be && negative < 0//other.js;be; // true
API
Interface Rule:
- If the first letter of the API is lowercase, then it refers to toString.call(value), the type returned by call.
be.function(()=>{})
equivalent
toString.call(()=>{}) ==== "[object Function]"
be.generatorFunction(function* (){})
equivalent
toString.call(function* (){}) ==== "[object GeneratorFunction]"
be.uint8Array(new Uint8Array())
equivalent
toString.call(new Uint8Array()) ==== "[object Uint8Array]" etc..
- if the first letter of the API is Uppercase, it means not toString.call(value), Custom type returned by call
Default built-in type check:
Interface | Spec |
---|---|
Function | plain function |
Object | plain object |
String | basic string |
Number | basic number |
Boolean | basic boolean |
NaN | strict equality to NaN |
Nil | null or undefined |
Empty | none length |
Infinity | strict equality to Infinity |
Finite | basic number and not NaN or Infinity |
Native | pristine native function |
SafeInteger | based on Number.isSafeInteger |
Integer | based on Number.isInteger |
Element | HTML Element |