Array.prototype.values breaks the web

# Till Schneidereit (9 months ago)

We've had to back out Array.prototype.values for the second time now, because it breaks every website that uses Sencha's Ext.js. See 1, 2 and 3. In 4, Don from Sencha says that they're investigating, but also that even once they fix the issue, (obviously) it's going to take some time for all users to upgrade.

These users include all commercial Ext.js users (banking websites1 and Synology's NAS web interfaces among them), every Typo3 installation, and most certainly lots of other open source projects. Searching for "ext.js" on github gets some 7000 hits.

Given that, I don't see how we can expect to be able to land Array.prototype.values in any meaningful timeframe and think dropping it or changing the name should be considered.

# Brandon Benvie (9 months ago)

On 7/23/2013 9:00 AM, Till Schneidereit wrote:

Given that, I don't see how we can expect to be able to land Array.prototype.values in any meaningful timeframe and think dropping it or changing the name should be considered.

Bikeshed time! I submit "vals" and "items".

# Brendan Eich (9 months ago)

First, I think we should question adding plain-named methods to long-standard prototypes.

Second, we should avoid cybercruddy names.

Third, we should be careful to break common pairings such as key and value.

Where does this leave us? I'm thinking close to wanting a functional API, generic keys, values, entries (nee items), with any method delegation using symbol-named @keys, @values, @entries.

# Rick Waldron (9 months ago)

I've added the subject to the agenda