last index check

Benchmark created on


Setup

const arr = Array.from(Array(10_000)).map((_, i) => i + 1);
const values = [];

Test runner

Ready to run.

Testing in
TestOps/sec
for let index
for (let i = 0; i < arr.length; i++) {
	const val = arr[i]; // always access index
	const value = i === arr.length - 1 ? 'last' : val;
	values.push(value);
}
ready
for...of with index
let i = 0;
for (const val of arr) {
	const value = i++ === arr.length - 1 ? 'last' : val;
	values.push(value);
}
ready
for array entries()
for (const [i, val] of arr.entries()) {
	const value = i === arr.length - 1 ? 'last' : val;
	values.push(value);
}
ready
for let index, cached length
for (let i = 0, len = arr.length; i < len; i++) {
	const val = arr[i]; // always access index
	const value = i === len - 1 ? 'last' : val;
	values.push(value);
}
ready
for let index, cached last index
for (let i = 0, last = arr.length - 1; i < arr.length; i++) {
	const val = arr[i]; // always access index
	const value = i === last ? 'last' : val;
	values.push(value);
}
ready
for let index, cached length and last index
for (let i = 0, len = arr.length, last = len - 1; i < len; i++) {
	const val = arr[i]; // always access index
	const value = i === last ? 'last' : val;
	values.push(value);
}
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.