Javascript Typed Arrays: Method Support

Al MacDonald recently posted - which is an interesting look at the benchmarkable speed differences between FireFox 4’s Float32Array constructor and the traditional Array constructor.

As expected, the Typed Arrays are definitively faster due entirely to native optimization: they only allow integer or floating point numbers (respectively to their Int or Float prefix); additionally length is required and immutable.

What about the nitty gritty? I whipped up a basic test suite to check support for methods of the traditional Array object - take a look:

  • + supported
  • - unsupported

  • Understandably, the following methods don't fit the paradigm of an array with a required, immutable length:
    • concat
    • push
    • pop
    • shift
    • unshift
    But I fail to see why "slice" gets preferential treatment (by name in the spec) while other useful methods such as "indexOf", "reverse", "sort", "filter", "forEach", etc are not included in the spec. Note that Firefox 4 supports all of these methods for traditional arrays.

    Want to try these at home? You'll need FireFox 4 Beta 1 and these:

    Get the entire gist here

    JavaScript JS Documentation: JS Array Example: Creating a Two-dimensional Array, JavaScript Array Example: Creating a Two-dimensional Array

This entry was posted by Rick Waldron (@rwaldron) on July 15, 2010 in Firefox, JavaScript and Feature.