let obj = {};
Object.defineProperty(obj, 'a', { enumerable: true, configurable: true });
Object.defineProperty(obj, 'b', { enumerable: true, configurable: true });
Object.defineProperty(obj, 'c', { enumerable: true, configurable: true });
let visited = []
for(prop in obj) {
Object.defineProperty(obj, 'c', { enumerable: false });
visited.push(prop);
}
print(visited.join(", "));
a, b, c
a, b, c
a, b
JSC on WebKit Nightly 9.0.3 (11601.4.4, r195810) gives
a, b, c