Array.prototype.slice.call() vs [].slice.call() nested

JavaScript performance comparison

Revision 7 of this test case created by

Preparation code

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script>
  var items = [1, 2, 3, 4, 5],
      slice = Array.prototype.slice,
      _slice = [].slice;
</script>
    

Preparation code output

<script> var items = [1, 2, 3, 4, 5], slice = Array.prototype.slice, _slice = [].slice; </script>

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in CCBot 2.0.0 / Other 0.0.0
Test Ops/sec
Array.prototype.slice
(function() {
var x;
(function() {
var y = 9;
(function() {
var z = 3;
Array.prototype.slice.call(items);
})()
})()
})()
pending…
[].slice
(function() {
var x;
(function() {
var y = 9;
(function() {
var z = 3;
[].slice.call(items);
})()
})()
})()
pending…
cached prototype
(function() {
var x;
(function() {
var y = 9;
(function() {
var z = 3;
slice.call(items);
})()
})()
})()
pending…
cached [].slice
(function() {
var x;
(function() {
var y = 9;
(function() {
var z = 3;
_slice.call(items);
})()
})()
})()
pending…
Array().slice
(function() {
var x;
(function() {
var y = 9;
(function() {
var z = 3;
Array().slice.call(items);
})()
})()
})()
pending…

Compare results of other browsers

Revisions

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

0 Comments