fillRect/concat vs fillRect/join vs 1×1 Image Data vs fillRect/template literal vs getImageData/putImageData vs getImageData/putImageData - set px.rgba vs getImageData/putImageData - set [px.r, px.g, px.b, px.a] vs getImageData/putImageData - set - no getImageDataFastest: getImageData/putImageData - set - no getImageData (122.1x faster)
676 ops/sec
319 ops/sec
276 ops/sec
243 ops/sec
117 ops/sec
109 ops/sec
66 ops/sec
6 ops/sec
Fastest: getImageData/putImageData - set - no getImageData (19.0x faster)
543 ops/sec
335 ops/sec
312 ops/sec
312 ops/sec
176 ops/sec
168 ops/sec
117 ops/sec
29 ops/sec
Results show median performance across all community submissions. Run this benchmark yourself to verify on your device.
| Test case name | Result |
|---|---|
| fillRect/concat | |
| fillRect/join | |
| 1×1 Image Data | |
| fillRect/template literal | |
| getImageData/putImageData | |
| getImageData/putImageData - set px.rgba | |
| getImageData/putImageData - set [px.r, px.g, px.b, px.a] | |
| getImageData/putImageData - set - no getImageData |
| Test name | Executions per second |
|---|---|
| ✓ getImageData/putImageData - set - no getImageData | 595 Ops/sec |
| getImageData/putImageData | 319 Ops/sec |
| getImageData/putImageData - set [px.r, px.g, px.b, px.a] | 277 Ops/sec |
| getImageData/putImageData - set px.rgba | 276 Ops/sec |
| fillRect/concat | 119 Ops/sec |
| fillRect/join | 109 Ops/sec |
| fillRect/template literal | 66 Ops/sec |
| 1×1 Image Data | 1 Ops/sec |