Object.each doesn't address IE DontEnum bugs like Object.extend and others #2130

Closed
jdalton opened this Issue Nov 21, 2011 · 3 comments

Projects

None yet

3 participants

@jdalton

While your other object iterator methods handle IE's DontEnum bug Object.forEach seems to be missing support.
You can see a test case (view in IE < 9).

@jdalton

Copying a bit of code from Function#overloadSetter:

Object.extend('forEach', function(object, fn, bind){
    for (var key in object){
        if (hasOwnProperty.call(object, key)) fn.call(bind, object[key], key, object);
    }
    if (enumerables) for (var i = enumerables.length; i--;){
        key = enumerables[i];
        if (hasOwnProperty.call(object, key)) fn.call(bind, object[key], key, object);
    }
});
@arian
MooTools member

yes, for 2.0 Base there is this ticket https://github.com/mootools/Base/issues/16 already.

@ibolmo ibolmo added a commit to ibolmo/mootools-core that referenced this issue Nov 22, 2011
@ibolmo ibolmo Added enumerables iteration (from Function.overloadSetter) to
Object.forEach. Fixed #2130.

Tested:
 * with compat: IE6-9
 * without compat: IE6-9
e6f2db9
@ibolmo
MooTools member
@ibolmo ibolmo was assigned Nov 23, 2011
@ibolmo ibolmo added a commit that closed this issue Dec 19, 2011
@ibolmo ibolmo Added enumerables iteration (from Function.overloadSetter) to
Object.forEach. Fixed #2130.

Tested:
 * with compat: IE6-9
 * without compat: IE6-9
e6f2db9
@ibolmo ibolmo closed this in e6f2db9 Dec 19, 2011
@ibolmo ibolmo reopened this Dec 20, 2011
@ibolmo ibolmo closed this Mar 3, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment