classnames vs clsx vs Array based vs String based (return struct) vs String based (if-else struct) vs Entries, filter, map, join vs String literallyFastest: String literally (57.6x faster)
173,777,504 ops/sec
4,217,782 ops/sec
4,207,108 ops/sec
4,193,002 ops/sec
3,641,877 ops/sec
3,169,924 ops/sec
3,017,030 ops/sec
Fastest: String literally (576.0x faster)
1,439,539,328 ops/sec
5,686,046 ops/sec
5,626,920 ops/sec
4,482,966 ops/sec
3,716,539 ops/sec
2,747,777 ops/sec
2,499,201 ops/sec
Fastest: String literally (110.9x faster)
386,672,672 ops/sec
7,966,980 ops/sec
6,002,528 ops/sec
5,223,249 ops/sec
5,001,527 ops/sec
4,585,162 ops/sec
3,486,184 ops/sec
Fastest: String literally (224.6x faster)
471,409,856 ops/sec
3,320,676 ops/sec
2,888,866 ops/sec
2,788,992 ops/sec
2,704,028 ops/sec
2,551,548 ops/sec
2,099,014 ops/sec
Results show median performance across all community submissions. Run this benchmark yourself to verify on your device.
| Test case name | Result |
|---|---|
| classnames | |
| clsx | |
| Array based | |
| String based (return struct) | |
| String based (if-else struct) | |
| Entries, filter, map, join | |
| String literally |
| Test name | Executions per second |
|---|---|
| ✓ String literally | 224,329,952 Ops/sec |
| clsx | 14,733,011 Ops/sec |
| String based (if-else struct) | 13,823,149 Ops/sec |
| String based (return struct) | 13,767,583 Ops/sec |
| Entries, filter, map, join | 9,913,314 Ops/sec |
| Array based | 7,539,895 Ops/sec |
| classnames | 6,523,418 Ops/sec |