value == null vs value == undefined vs value === null vs value === undefined vs value === null || value === undefined vs _.isNil(value) vs value != null vs value != undefined vs value !== null vs value !== undefined vs value !== null && value !== undefined vs !_.isNil(value)Fastest: value != null (3.5x faster)
27,558,090 ops/sec
27,130,788 ops/sec
27,009,758 ops/sec
26,616,356 ops/sec
10,457,872 ops/sec
10,348,250 ops/sec
10,261,336 ops/sec
10,195,274 ops/sec
10,170,217 ops/sec
10,097,961 ops/sec
7,907,437 ops/sec
7,864,778 ops/sec
Results show median performance across all community submissions. Run this benchmark yourself to verify on your device.
| Test case name | Result |
|---|---|
| value == null | |
| value == undefined | |
| value === null | |
| value === undefined | |
| value === null || value === undefined | |
| _.isNil(value) | |
| value != null | |
| value != undefined | |
| value !== null | |
| value !== undefined | |
| value !== null && value !== undefined | |
| !_.isNil(value) |
| Test name | Executions per second |
|---|---|
| ✓ value != null | 107,939,616 Ops/sec |
| value == undefined | 107,157,824 Ops/sec |
| value == null | 106,736,216 Ops/sec |
| value !== null | 106,631,448 Ops/sec |
| value === null || value === undefined | 106,270,456 Ops/sec |
| value !== undefined | 106,162,312 Ops/sec |
| value !== null && value !== undefined | 105,769,680 Ops/sec |
| value === undefined | 104,109,952 Ops/sec |
| value != undefined | 103,544,656 Ops/sec |
| value === null | 102,172,848 Ops/sec |
| _.isNil(value) | 101,821,208 Ops/sec |
| !_.isNil(value) | 101,611,520 Ops/sec |