Skip to content

Commit 7e6f49b

Browse files
committed
WIP readme
1 parent 6f987e4 commit 7e6f49b

File tree

1 file changed

+34
-21
lines changed

1 file changed

+34
-21
lines changed

README.md

Lines changed: 34 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -13,27 +13,40 @@ See the [test page](https://wizard04wsu.github.io/javascript-type-testing/test/t
1313
This module uses an expanded set of type names that make no distinction between primitive values and objects.
1414
For example, `5` and `new Number(5)` are both of type "number".
1515

16-
| Type Name | Values
17-
| - | -
18-
| array | `Array` objects
19-
| bigint | _bigint_ primitives
20-
| boolean | `false`, `true`, `Boolean` objects
21-
| date | `Date` objects
22-
| error | `Error` objects
23-
| function | `Function` objects
24-
| map | `Map` objects
25-
| nan | `NaN`, `Number` objects with value `NaN`
26-
| null | `null`
27-
| number | _number_ primitives, `Number` objects; excludes `NaN` values
28-
| object | instances of `Object` that don't match another type in this list
29-
| promise | `Promise` objects
30-
| regex | `RegExp` objects
31-
| set | `Set` objects
32-
| string | _string_ primitives, `String` objects
33-
| symbol | _symbol_ primitives
34-
| undefined | `undefined`
35-
| weakmap | `WeakMap` objects
36-
| weakset | `WeakSet` objects
16+
| Type Name | Primitive Values | Instances Of Classes
17+
| - | - | -
18+
| defined | any value (not undefined) | `Object`
19+
| undefined | undefined |
20+
| primitive | not an instance of `Object` |
21+
| object | | `Object`
22+
| objectish | `null` | `Object`
23+
| null | `null` |
24+
| nullish | undefined, `null` |
25+
| boolean | `false`, `true` |
26+
| false | `false` |
27+
| true | `true` |
28+
| falsy | undefined, `null`, `false`, `0n`, `NaN`, `0`, `""` |
29+
| truthy | values that are not _falsy_ | `Object`
30+
| symbol | a `Symbol` |
31+
| bigint | `0n`, `5n` |
32+
| numberish | `0`, `5`, `Infinity`, `NaN` | `Number`
33+
| nan | `NaN` | `Number` instances with value `NaN`
34+
| number | `0`, `5`, `Infinity` | `Number` excluding instances with value `NaN`
35+
| real | `0`, `5` | `Number` instances for real numbers
36+
| infinite | `Infinity` | `Number` instances for infinite numbers
37+
| string | `""`, `"foo"` | `String`
38+
| array | `[]`, `[1,2]` | `Array`
39+
| map | | `Map`
40+
| set | | `Set`
41+
| weakmap | | `WeakMap`
42+
| weakset | | `WeakSet`
43+
| empty | `[]` | `String` or `Array` of length == 0, `Map` or `Set` of size == 0
44+
| nonempty | values that are not _empty_ | instances that are not _empty_
45+
| date | | `Date`
46+
| error | | `Error`
47+
| function | | `Function`, `function(){}`, `()=>{}`
48+
| promise | | `Promise`
49+
| regex | | `Regex`, `/foo/`
3750

3851

3952
## Determine a Type

0 commit comments

Comments
 (0)