floor vs ~~ vs >> 0 vs | 0 vs << 0 vs & 0xFFFFFFFFFFFF vs ^ 0x000000000000 vs Math.trunc() vs x - (x % 1) vs parseInt()Fastest: | 0 (1.5x faster)
8,765,090 ops/sec
8,714,262 ops/sec
8,692,112 ops/sec
8,659,290 ops/sec
8,651,871 ops/sec
8,642,471 ops/sec
6,334,424 ops/sec
6,270,535 ops/sec
6,267,598 ops/sec
5,757,061 ops/sec
Fastest: x - (x % 1) (2.5x faster)
749,732,032 ops/sec
302,376,032 ops/sec
302,283,008 ops/sec
302,231,360 ops/sec
301,916,128 ops/sec
301,779,584 ops/sec
301,321,184 ops/sec
301,061,056 ops/sec
300,842,848 ops/sec
299,751,392 ops/sec
Fastest: | 0 (1.9x faster)
13,472,366 ops/sec
13,460,454 ops/sec
13,430,561 ops/sec
13,415,003 ops/sec
13,385,108 ops/sec
13,374,893 ops/sec
8,296,560 ops/sec
8,197,898 ops/sec
8,088,722 ops/sec
7,196,082 ops/sec
Fastest: ~~ (1.8x faster)
4,485,141 ops/sec
4,461,920 ops/sec
4,457,368 ops/sec
4,445,438 ops/sec
4,423,438 ops/sec
4,422,493 ops/sec
3,179,312 ops/sec
3,119,708 ops/sec
2,728,166 ops/sec
2,532,486 ops/sec
Results show median performance across all community submissions. Run this benchmark yourself to verify on your device.
| Test case name | Result |
|---|---|
| floor | |
| ~~ | |
| >> 0 | |
| | 0 | |
| << 0 | |
| & 0xFFFFFFFFFFFF | |
| ^ 0x000000000000 | |
| Math.trunc() | |
| x - (x % 1) | |
| parseInt() |
| Test name | Executions per second |
|---|---|
| ✓ ~~ | 20,249,666 Ops/sec |
| << 0 | 19,379,608 Ops/sec |
| | 0 | 19,292,848 Ops/sec |
| ^ 0x000000000000 | 19,289,234 Ops/sec |
| >> 0 | 19,151,622 Ops/sec |
| & 0xFFFFFFFFFFFF | 18,857,014 Ops/sec |
| parseInt() | 17,844,722 Ops/sec |
| x - (x % 1) | 11,761,358 Ops/sec |
| floor | 11,634,712 Ops/sec |
| Math.trunc() | 11,594,682 Ops/sec |