Preparation Code Preparation HTML (this will be inserted in the <body>
of a valid HTML5 document in standards mode) (useful when testing DOM operations or including libraries) <script src ="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" >
</script >
Setup JS var i,
value,
length,
values = [],
sum = 0 ,
context = values;
for (i = 0 ; i < 10000 ; i++) {
values[i] = Math .random ();
}
function add (val ) {
sum += val;
}
Teardown JS
i = 0 ;
value = 0 ;
length = 0 ;
values = [];
sum = 0 ;
Test cases
Test #1 Title *
Async
Code * values.forEach (add);
Test #2 Title *
Async
Code * for (i = 0 ; i < values.length ; i++) {
sum += values[i];
}
Title *
Async
Code * length = values.length ;
for (i = 0 ; i < length; i++) {
sum += values[i];
}
Title *
Async
Code * for (i = values.length - 1 ; i >= 0 ; i--) {
sum += values[i];
}
Title *
Async
Code * length = values.length ;
for (i = 0 ; i < length; i++) {
add (values[i], i, values);
}
Title *
Async
Code * length = values.length ;
for (i = 0 ; i < length; i++) {
add.call (context, values[i], i, values);
}
Title *
Async
Code * $.each (values, function (key, value ) {
sum += value;
});
Title *
Async
Code * for (i in values) {
sum += values[i];
}
Title *
Async
Code * for (i = values.length ; i--;) {
sum += values[i];
}
Title *
Async
Code * for (i = values.length - 1 ; i >= 0 ; --i) {
sum += values[i];
}
Title *
Async
Code * for (i = 0 ;
(value = values[i]) !== undefined ; i++) {
sum += value;
}
Title *
Async
Code * for (i = values.length - 1 ;
(value = values[i]) !== undefined ; i--) {
sum += value;
}
Title *
Async
Code * for (i = 0 ;
(value = values[i]) !== undefined ; i++) {
add (value, i, values);
}
Title *
Async
Code * for (i = 0 ;
(value = values[i]) !== undefined ; i++) {
add.call (context, value, i, values);
}
Title *
Async
Code * values.forEach (add);
Title *
Async
Code * for (i = values.length ; i > 0 ;) {
sum += values[--i];
}
Title *
Async
Code * i = values.length ;
while (i >= 0 ) {
sum += values[i--];
}
Title *
Async
Code * const fixedLength = values.length ;
for (i = 0 ; i < fixedLength; i++) {
sum += values[i];
}