JSFiddle - React, Tailwind, and code Playground
HTML
<h1>Here be dragons</h1>
<ul id="results"></ul>
JavaScript
var arraySlice = function (array) {
return Array.slice(array, 0);
};
var convertToByteString = function (array) {
var len = (array.length + 9999) / 10000;
var str = '';
var f = String.fromCharCode;
var off, i;
for (i = 0; i < len; i++) {
off = i * 10000;
str += f.apply(null, array.subarray(off, off + 10000));
}
return str;
};
var timeIt = function (message, conversionFunc) {
var start = (new Date()).getTime();
var size = 750 * 500 * 4;
// this many frames per second ;)
for (var i = 0; i < 30; i ++) {
var x = conversionFunc(new Uint8ClampedArray(size));
}
var end = (new Date()).getTime();
$('<li></li>').text(message + ' took ' + (end - start) + 'ms')
.appendTo('#results');
};
timeIt('Array.slice', arraySlice);
timeIt('String.fromCharCode multiple times', convertToByteString);