lib/atomize.js
function () {
                        self.log("enumerate");
                        var result = [], keys, i, name, desc;
                        stm.recordRead(self);
                        keys = handler.getPropertyNames();
                        for (i = 0; i < keys.length; i += 1) {
                            name = keys[i];
                            desc = handler.getPropertyDescriptor(name);
                            if (undefined !== desc && desc.enumerable) {
                                result.push(name);
                            }
                        }
                        return result;
                    }
function () {
                        self.log("enumerate");
                        var result = [], keys, i, name, desc;
                        stm.recordRead(self);
                        keys = handler.getPropertyNames();
                        for (i = 0; i < keys.length; i += 1) {
                            name = keys[i];
                            desc = handler.getPropertyDescriptor(name);
                            if (undefined !== desc && desc.enumerable) {
                                result.push(name);
                            }
                        }
                        return result;
                    }
function ( ) { self . log ( "enumerate" ) ; var result = [ ] , keys , i , name , desc ; stm . recordRead ( self ) ; keys = handler . getPropertyNames ( ) ; for ( i = 0 ; i < keys . length ; i += 1 ) { name = keys [ i ] ; desc = handler . getPropertyDescriptor ( name ) ; if ( undefined !== desc && desc . enumerable ) { result . push ( name ) ; } } return result ; }
bad behavior when set fails in non-strict mode
bad behavior when set fails in non - strict mode